我在Digital Ocean上拥有一个VPS,其中包含Ubuntu 18.04,Nginx,Gunicorn,Django和一个测试Web应用程序,所有这些都配置(ufw)可以与http:80一起使用。一切正常。 Tutorial
现在,我修改文件 / sites-available / LibrosWeb ,以允许使用具有自签名证书的SSL流量,因为我没有域。 Tutorial。结果“错误502错误的网关错误” 。
这是与http:80一起使用的初始代码:
server{
#Configuracion http
listen 80;
listen [::]:80;
server_name 15.15.15.15;
location = /favicon.ico { access_log off; log_not_found off; }
location /robots.txt {
alias /var/www/LibrosWeb/robots.txt ;
}
location /static/ {
root /home/gela/LibrosWeb;
}
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
这是允许SSL(错误502)的代码:
server{
#Configuracion SSL
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name 15.15.15.15;
include snippets/self-signed.conf;
include snippets/ssl-params.conf;
location = /favicon.ico { access_log off; log_not_found off; }
location /robots.txt {
alias /var/www/LibrosWeb/robots.txt ;
}
location /static/ {
root /home/gela/LibrosWeb;
}
location / {
include proxy_params;
proxy_pass https://unix:/run/gunicorn.sock;
}
}
server{
#Configuracion http
listen 80;
listen [::]:80;
server_name 15.15.15.15;
return 302 https://15.15.15.15$request_uri;
}
UFW配置为:
80,443/tcp (Nginx Full) ALLOW IN Anywhere
80,443/tcp (Nginx Full (v6)) ALLOW IN Anywhere (v6)
/etc/nginx/snippets/self-signed.conf 和 /etc/nginx/snippets/ssl-params.conf 中的文件与本教程。
我已经测试配置两天了,最能得到的就是我半途工作,也就是说,如果我将这样的代码放进去,我可以显示django的默认页面,而不显示我的应用程序之一。 :
server{
#Configuracion http
listen 80;
listen [::]:80;
server_name 15.15.15.15;
return 302 https://15.15.15.15$request_uri;
location = /favicon.ico { access_log off; log_not_found off; }
location /robots.txt {
alias /var/www/LibrosWeb/robots.txt ;
}
location /static/ {
root /home/gela/LibrosWeb;
}
}
server{
#Configuracion SSL
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name 15.15.15.15;
include snippets/self-signed.conf;
include snippets/ssl-params.conf;
location / {
include proxy_params;
proxy_pass https://unix:/run/gunicorn.sock;
}
}
出什么问题了,或者缺少了什么?
答案 0 :(得分:0)
我认为我痛苦的日子已经过去了。阅读数百条日志后,我发现了问题。将Whitenoise更新为4.0,您必须更改配置的形状,这导致使用我的旧配置的gunicorn服务将引发错误。其余的都没事。
http://whitenoise.evans.io/en/stable/django.html#django-middleware
感谢您的帮助。 美好的一天。