在Heroku上使用Django设置变量SECURE_PROXY_SSL_HEADER

6
我正在尝试在Heroku上使用Django 1.8来设置与https/ssl相关的变量,但是在Django 1.8教程中,它指出我应该小心设置这个变量,尤其是 "SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')".
在Django 1.8的教程中提到:
警告:如果你不知道自己在做什么,就会在网站中开启安全漏洞。如果你没有设置时,也同样如此。所以要确保以下所有条件都成立,然后再进行设置(假设以上例子中的值):
- 您的Django应用程序位于代理后面。 - 您的代理从所有传入请求中剥离X-Forwarded-Proto标题。换句话说,如果最终用户在他们的请求中包含该标题,代理将丢弃它。 - 您的代理为通过HTTPS最初进入的请求设置了X-Forwarded-Proto头,并将其发送给Django。
如果上述任何一点不成立,您应该将此设置保持为None,并寻找其他方式确定HTTPS,例如通过自定义中间件。当我使用Heroku时,它是否满足所有这些条件?我应该继续吗?
1个回答

5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接