Chào các bạn, hôm trước mình có chia sẻ một bài viết về việc google ưu tiên hiển thị kết quả tìm kiếm từ các website sử dụng giao thức HTTPS thay vì HTTP như trước đây. Vì vậy hôm nay mình sẽ hướng dẫn các bạn nào chưa biết cách cấu hình HTTPS cho website. Xem lại bài viết trước tại: http://forum.vietmoz.net/threads/muon-tang-thu-hang-tren-google-hay-su-dung-giao-thuc-https.24857/ Bài viết này hướng dẫn bạn cách cấu hình máy chủ dịch vụ website sử dụng giao thức HTTPS. Phần đầu là tạo giấy chứng nhận và tự ký. Nếu bạn là tổ chức hay doanh nghiệp muốn sử dụng giao thức này trên Internet thì bạn phải đặt mua giấy chứng nhận tại các tổ chức cơ uy tín chứ không thể tự tạo lấy. I. Tạo giấy chứng nhận Bạn cần có OpenSSL được cài sẵn trong máy. Trên Windows, bạn có thể sử dụng MSYS, tuy hơi cồng kềnh một chút. Còn trên Linux, còn tùy thuộc vào từng bản phân phối, đã cài sẵn OpenSSL rồi. Nếu không bạn có thể cài một cách dễ dàng. 1. Tạo giấy chứng nhận cho người sẽ ký (Personal Certification) $ openssl genrsa -des3 -out my-ca.key 2048 $ openssl req -new -x509 -days 365 -key my-ca.key -out my-ca.crt 2. Tạo và ký giấy chứng nhận cho máy chủ (Server Certification) $ openssl genrsa -des3 -out server.key 1024 # tạo khóa $ openssl req -new -key server.key -out server.csr # tạo file để yêu cầu ký # Thay vì sử dụng 2 lệnh như ở trên bạn có thể sử dụng một lệnh đơn: $ openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr # server.csr chính là thứ ta mang đi để yêu cầu ký tại các tổ chức CA # Ở đây ta tự ký lấy, sử dụng chữ ký tự tạo $ openssl x509 -req -in server.csr -out server.crt \ -sha1 -CA my-ca.crt -CAkey my-ca.key -CAcreateserial -days 365 cp server.key server.key.backup # sao lưu dự phòng $ openssl rsa -in server.key.backup -out server.key # gỡ bỏ password Như vậy quá trình tạo bao gồm bốn file: + my-ca.key, my-ca.crt chứa thông tin về người sẽ dùng để ký + server.key: chứa khóa để giải mã cho máy chủ. + server.crt chứa giấy chứng nhận đã được ký. II. Cấu hình cho các máy chủ https 1. Cấu hình cho Apache 2.2.17 Trong file cấu hình chính của Apache là httpd.conf, gỡ bỏ # ở các dòng sau để bật moduleopenssl LoadModule ssl_module modules/mod_ssl.so Include conf/extra/httpd-ssl.conf Giả sử bạn đặt các file giấy chứng nhận tại thư mục /usr/local/apache/conf/. Vậy thì bạn cấu hình file httpd-ssl.conf có nội dung như sau: SSLCertificateFile /usr/local/apache/conf/server.crt SSLCertificateKeyFile /usr/local/apache/conf/server.key SSLCertificateChainFile /usr/local/apache/conf/my-ca.crt Nếu sau khi cấu hình và khởi động lại Apache mà bạn gặp thông báo "This Connection is Untrusted" khi truy cập bằng trình duyệt là đã thành công. Tất nhiên là "không đáng tin" rồi vì tự ta ký lấy mà! Bạn chỉ cần yêu cầu trình duyệt thêm giấy chứng nhận này vào danh sách đáng tin là xong. 2. Cấu hình cho nginx Ở đây tôi dùng bản nginx-1.1.0 server { listen 443; server_name localhost; ssl on; ssl_certificate /usr/local/apache/conf/server.crt; ssl_certificate_key /usr/local/apache/conf/server.key; #... } Chú ý: Ta nhận thấy khi cấu hình cho nginx chỉ bao gồm hai tệp tin chứ không phải là 3 như Apache ở trên. Đó là vì server.crt bao gồm hai file server.crt và my-ca.crt gộp lại: $ cat my-ca.crt >> server.crt Nên dùng đường dẫn tuyệt đối. Nếu dùng đường dẫn tương đối, trên Windows có thể nó sẽ coi thư mục hiện hành là conf chứ không phải là thư mục chứa tệp tin thi hành như chúng ta mong đợi. Không nên sử dụng dấu cách khi đặt tên. Nếu có thì đặt nó trong dấu nháy kép. Chúc các bạn SEO hiệu quả
Nếu bạn sử dụng giao thức HTTPS thì khi có ai truy cập vào website của bạn theo đường dẫn HTTP://... thì trình duyệt sẽ tự động chuyển sang HTTPS nhé
dùng cái free này thì khả năng sẽ bị lỗi truy cập không an toàn tốt nhất nên dùng loại trả tiền, cũng rẻ mà
Theo mình thì không nên chuyển sang https, vì tốc độ load trang chậm và đôi khi website sẽ không thể truy cập dẫn đến mất một lượng khách không hề nhỏ
Tốc độ load trang của https đúng là chậm hơn còn không thể truy cập là do sử dụng ssl free và cấu hình không đúng nên mới bị mà
mình thấy letsenscryp đang rất phổ biến , nhiều người dùng mà đâu có lỗi gì đâu . Muốn tốc độ load trang không bị giảm thì thiết kế web dùng ít js thôi là ổn