【发布时间】:2015-12-20 21:51:01
【问题描述】:
我想用 nginx 设置 django,用 https 设置 gunicorn。但是,如果我想去 django 的管理员,它会在加载时挂起。
我使用以下命令调用应用程序: gunicorn core.wsgi:application --bind 127.0.0.1:8181 --certfile=/etc/nginx/ssl/ssl-bundle.crt --keyfile=/etc/nginx/ssl/hoi.key
我已经在我的 settings.py 中:
- CSRF_COOKIE_SECURE = 真
- SESSION_COOKIE_SECURE = 真
- SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
这是我的 nginx 配置:
server{
listen 80;
listen 443 ssl;
server_name test.hello.com;
access_log /var/log/nginx/neat.access.log;
error_log /var/log/nginx/neat.error.log;
root /var/www/Test/;
ssl on;
ssl_certificate /etc/nginx/ssl/ssl-bundle.crt;
ssl_certificate_key /etc/nginx/ssl/hoi.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
ssl_prefer_server_ciphers on;
location /
{
add_header Access-Control-Allow-Origin "*";
proxy_pass https://127.0.0.1:8181;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
}
}
【问题讨论】:
标签: python django ssl nginx gunicorn