Tôi nhận ra điều này trông giống như một bản sao của ít nhất một vài câu hỏi khác, nhưng tôi đã đọc chúng vài lần và vẫn đang làm gì đó sai.
Sau đây là nội dung của tập tin cấu hình nginx myexample.com của tôi nằm ở /etc/nginx/sites-available
.
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name myexample.com www.myexample.com;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
ssl_certificate /etc/letsencrypt/live/myexample.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/myexample.com/privkey.pem;
#Configures the publicly served root directory
#Configures the index file to be served
root /var/www/myexample.com;
index index.html index.htm;
}
Nó hoạt động, khi tôi truy cập https://myexample.com , nội dung được phục vụ và kết nối được bảo mật. Vì vậy, cấu hình này có vẻ là tốt.
Bây giờ nếu tôi thay đổi cổng ssl thành 9443 và tải lại cấu hình nginx, cấu hình tải lại không có lỗi, nhưng truy cập https://myexample.com sẽ hiển thị lỗi trong trình duyệt (Trang web này không thể truy cập / myexample.com từ chối kết nối. ERR_CONNECTION_REFUSED)
Tôi đã thử các đề xuất và tài liệu ở đây , ở đây và ở đây (trong số những người khác) nhưng tôi luôn gặp lỗi ERR_CONNMENT_REFUSED.
Tôi nên lưu ý rằng tôi có thể sử dụng một cổng không chuẩn và sau đó nhập rõ ràng cổng đó vào URL, ví dụ: https://myexample.com:9443 . Nhưng tôi không muốn làm điều đó. Điều tôi muốn là người dùng có thể nhập myexample.com vào bất kỳ trình duyệt nào và tự động chuyển hướng nginx đến kết nối an toàn.
Một lần nữa, tôi không gặp vấn đề gì khi sử dụng cổng SSL 443 tiêu chuẩn.
Chỉnh sửa: Tôi đang sử dụng nginx / 1.6.2 trên debian / jessie