python - 带有 nginx 反向代理的 django SECURE_SSL_REDIRECT

标签 python django docker nginx

如果我将 nginx 设置为通过 https 服务站点的反向代理,设置 SECURE_SSL_REDIRECT=False 是否安全?

如果将其设置为 False,我可以通过 SSL 访问该站点,如果它是 True,我会收到太多重定向响应。

注意:nginx 和 django 在 docker 容器中运行。

我的 nginx.conf 看起来像:

upstream config {
    server web:8000;
}

server {
    listen 80;
    server_name _;
    return 301 https://$host$request_uri;
}

server {

    listen                  443 ssl;
    server_name             _;
    ssl_certificate         /etc/ssl/certs/cert.com.chained.crt;
    ssl_certificate_key     /etc/ssl/certs/cert.com.key;

    location / {
        proxy_pass http://config;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $host;
        proxy_redirect off;
    }

    location /staticfiles/ {
        alias /home/app/web/staticfiles/;
    }

}

编辑:在 nginx.conf 中添加了 http 到 https 重定向。

最佳答案

您需要将以下内容添加到“location/” block 中:

location / {
     ...
     proxy_set_header X-Forwarded-Proto $scheme;
     ...
}

关于python - 带有 nginx 反向代理的 django SECURE_SSL_REDIRECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61506513/

相关文章:

python - Pandas to_sql 使用错误的数据类型,可以更改吗?

python - 如何停止在 Tkinter 中引发事件?

python - Tastypie 中的文件字段

在 Ubuntu 18 上重新启动后找不到 Docker

java - 访问网页时出现问题(在 Wildfly 上上传)

python - 了解 Linux Mint 中的扭曲安装

python - CSV Reader 对象获取 ValueError : I/O operation on closed file?

docker - Docker 中的 Virtualbox

django - 您可以以相同的形式创建父对象和子对象列表吗

Django:ProgrammingError 关系不存在