我正在尝试根据此tutorial将SSL证书添加到django应用程序中。我可以使用“ https://ebluedesign.online”打开我的网站。但是Web浏览器返回的格式为“由于受信任的证书颁发机构,无法验证证书”。接受消息后,我的页面可以正确显示。
我的nginx文件如下:
upstream app_server {
server unix:/home/app/run/gunicorn.sock fail_timeout=0;
}
server {
#listen 80;
# add here the ip address of your server
# or a domain pointing to that ip (like example.com or www.example.com)
server_name ebluedesign.online;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/ebluedesign.online/cert.pem;
ssl_certificate_key /etc/letsencrypt/live/ebluedesign.online/privkey.pem;
keepalive_timeout 5;
client_max_body_size 4G;
access_log /home/app/logs/nginx-access.log;
error_log /home/app/logs/nginx-error.log;
location /static/ {
alias /home/app/static/;
}
# checks for static file, if not found proxy to app
location / {
try_files $uri @proxy_to_app;
}
location @proxy_to_app {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://app_server;
}
}
server {
listen 80;
listen [::]:80;
server_name ebluedesign.online;
return 301 https://$host$request_uri;
}
我的证书也在这里显示:
/etc/letsencrypt/live/ebluedesign.online/...
如何使用SSL证书解决此问题。我通过https://letsencrypt.org/使用免费的SSL。
编辑:
答案 0 :(得分:1)
奇怪的是,即使您进入文件http://bluedesign.online/,即使您似乎根本没有监听端口80,它也可以正常工作。您是否在nginx中有两个安装文件?您发布的邮件可能没有被使用。
我已经成功地多次阅读了本教程。如果有机会,您可以尝试从头开始使用它:https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04