Tôi đang cố gắng chuyển từ chứng chỉ tự ký sang chứng chỉ Let Encrypt trên máy chủ web nginx của mình.
Hiện nay, tôi chuyển hướng tất cả các yêu cầu đến http/80
để https/443
, trong đó sử dụng một ký tự giấy chứng nhận tôi đã tạo một thời gian trước đây.
Bây giờ - từ những gì tôi hiểu, Let's Encrypt đưa ra yêu cầu tới cổng 80 (như tôi đang sử dụng webroot
tùy chọn certbot
). Các yêu cầu này được chuyển hướng, làm cho việc tạo chứng chỉ không thành công.
Tôi đã cố gắng để đạt được điều này với khối máy chủ sau, nghe ở cổng 80:
server {
listen 80;
server_name sub.domain.tld;
server_tokens off;
location /.well-known {
root /var/www/letsencrypt;
}
location / {
return 301 https://$host$request_uri;
}
}
Nhưng yêu cầu /.well-known
được chuyển hướng đến https/443
dù sao.
Làm cách nào tôi có thể chuyển hướng tất cả các yêu cầu từ http/80
đến https/443
, ngoại trừ các yêu cầu đến /.well-known/
?
wget
/curl
webroot
cáccertbot
tùy chọn đòi hỏi đồng bằng http.