Copyright© Mat Bao Company. All Reserved.
Sử dụng nội dung ở trang này và dịch vụ tại Mắt Bão có nghĩa là bạn đồng ý với Thỏa thuận sử dụng và Chính sách bảo mật của chúng tôi.
Công ty cổ phần Mắt Bão - Giấy phép kinh doanh số: 0302712571 cấp ngày 04/09/2002 bởi Sở Kế Hoạch và Đầu Tư Tp. Hồ Chí Minh.
Giấy phép cung cấp dịch vụ Viễn thông số 247/GP-CVT cấp ngày 08 tháng 05 năm 2018.
Hướng dẫn kích hoạt HTTP 2.0 trên Plesk
1. HTTP 2.0 là gì?
HTTP/2 còn gọi là HTTP/2.0 hay HTTP 2.0 là phiên bản chính thức thứ 2 của giao thức mạng HTTP được dùng cho World Wide Web. Được phê chuẩn vào tháng 5 năm 2015. HTTP 2.0 được tạo ra để giải quyết các vấn đề về hiệu năng của của HTTP 1.1. Hiện tại HTTP 2.0 đang được hỗ trợ bởi các trình duyệt web lớn.
Thông tin chi tiết các bạn tham khảo thêm tại đây.
2. Hướng dẫn bật HTTP 2.0 trên Plesk.
Trước tiem đảm bảo rằng Nginx Webserver của bạn đã cập nhật lên phiên bản mới nhất và đang hoạt động. Bản có thể kiểm tra bằng cách truy cập vào bảng điều khiển Plesk với quyền admin sau đó tìm đến mục “Tools & Settings” -> “Server Components” Management” nhập nginx để tìm kiếm.
Sau đó kiểm tra service có hoạt đông không bằng cách truy cập vào “Tools & Settings -> “Services
Sau khi kiểm tra mọi thứ đã ổn, bạn truy cập vào máy chủ thông qua SSH và bật HTTP 2.0 bằng lệnh:
# plesk bin http2_pref enable
Sau khi bạn chạy lệnh này Plesk sẽ bật giao thức TLS với mật mã hiện đại và an toàn, webserber sẽ được xây dựng lại. Sau khi hoàn tất tất cả các website trên máy chủ sẽ được hỗ trợ HTTP 2.0.
Để kiểm tra có thể dùng công cụ này https://tools.keycdn.com/http2-test
Bạn có thể tắt HTTP 2.0 đi nếu không còn nhu cầu nữa bằng lệnh
# plesk bin http2_pref disable
3. Hỗ trợ ALPN.
Để sử dụng được HTTP 2.0 trong Google Chrome, nginx webserver phải hỗ trợ ALPN (Application-Layer Protocol Negotiation). Thông tin chi tiết về ALPN ban tham khảo tại đây.
ALPN cho nginx có sẵn trong Plesk cho các hệ điều hành: CentOS 7, RedHat Enterprise Linux 7, Ubuntu 14.04, Ubuntu 16.04, và Debian 8.
Vì thế HTTP 2.0 do Plesk cung cấp có thể hoạt động tốt với các trình duyệt mới hiện tại.
4. Xử lý các lỗi phát sinh.
Nếu bạn gặp sự cố khi bật HTTP 2.0 cho một trang web hoặc kết quả kiểm tra chỉ hiển thị giao thức HTTP 1.x, hãy thử làm theo các bước bên dưới để khắc phục sự cố.
Đảm bảo rằng SSL được bật cho trang web trong phần Hosting Setting của tên miền đang được cấu hình. HTTP 2.0 chỉ được hỗ trợ cho các trang web SSL, vì vậy các trang web không có SSL sẽ tiếp tục hoạt động với HTTP /1.x. Đó là một hạn chế của nginx webserver và các trình duyệt web.
Kiểm tra xem nginx đã được bật chưa:
# plesk sbin nginxmng -s
Bật nó nếu cần:
# plesk sbin nginxmng -e
Kiểm tra xem gói OpenSSL có phiên bản 1.0.1 trở lên hay không:
# rpm -qa | grep openssl openssl-1.0.1e-42.el6_7.4.x86_64.
Kiểm tra xem không có mẫu cấu hình tùy chỉnh nào trong đó
/usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php
. Xóa nó nếu có và tạo lại tệp cấu hình:# plesk sbin httpdmng --reconfigure-all
Ngoài ra, nếu bạn không muốn xóa các cấu hình tùy chỉnh của mình, bạn có thể sửa đổi tệp
/usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php
như bên dưới.Tìm hàng tương tự như
($OPT['default'] ? ' default_server' : '') . ($OPT['ssl'] ? ' ssl' : '') ?>;
Và thay thế nó bằng hai hàng sau:
($OPT['default'] ? ' default_server' : '') . ($OPT['ssl'] ? ' ssl' : '') . ($OPT['ssl'] && $VAR->domain->physicalHosting->proxySettings['nginxHttp2'] ? ' http2' : '') ?>;
Sau đó, chạy lệnh:
# plesk bin http2_pref enable
Trong trường hợp sự cố kết nối SSL với HTTP 2.0 sau khi bật, hãy đảm bảo rằng lệnh
ssl_ciphers
trong/etc/nginx/conf.d/ssl.conf
hoặc trong cấu hình tùy chỉnhnginxDomainVirtualHost.php
có giá trị sau:ssl_ciphers EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20:EECDH+SHA256+AES128:EECDH+SHA384+AES256:EDH+SHA256+AES128:EDH+SHA256+AES256:EECDH+SHA1+AES128:EECDH+SHA1+AES256:EDH+SHA1+AES128:EDH+SHA1+AES256:EECDH+HIGH:EDH+HIGH:AESGCM+AES128:AESGCM+AES256:CHACHA20:SHA256+AES128:SHA256+AES256:SHA1+AES128:SHA1+AES256:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!KRB5:!aECDH:!EDH+3DES;
Nếu trang web của bạn không hoạt động trong một số trình duyệt sau khi bật HTTP 2.0, điều này có thể là bạn không có mật mã và giao thức cần thiết để hỗ trợ HTTP 2.0. Sử dụng tiện ích
sslmng
của Plesk để thiết lập các giao thức có sẵn và danh sách mật mã TLS sau khi bạn đã bật HTTP 2.0. Ví dụ: nếu bạn muốn sử dụng chính xác cùng một danh sách mật mã như Plesk, lệnh sẽ như sau:#plesk sbin sslmng --services=nginx --custom --ciphers="EECDH+AESGCM+AES128:EECDH+AESGCM+AES256:EECDH+CHACHA20:EDH+AESGCM+AES128:EDH+AESGCM+AES256:EDH+CHACHA20" --protocols="TLSv1 TLSv1.1 TLSv1.2"
Cấu hình sẽ được lưu trữ trong
/etc/nginx/conf.d/ssl.conf
. Plesk khuyến nghị nên chỉnh sửa tệp này theo cách thủ công.Nếu không có bước nào ở trên hữu ích, hãy liên hệ với bộ phận hỗ trợ kỹ thuật của Plesk hoặc có thể tạo bài viết trên trang diễn đàn của Plesk.
Chúc các bạn thành công.
Mình là Toàn hỗ trợ kỹ thuật thuộc team Cloud Hosting – Server. Mình rất thích tìm hiểu về công nghệ mới, học hỏi và tìm tòi nghiên cứu về quản trị và bảo mật về hệ thống.