我已将nginx配置为运行HTTPS。我还重写了所有规则,因此它在HTTPS下运行。
但是Django仍在内部使用HTTP运行吗?
Django version 1.2.1, using settings 'myproject.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
[14/Aug/2012 23:57:04] "GET /app/c HTTP/1.0" 200 4
[14/Aug/2012 23:57:09] "GET /app/c HTTP/1.0" 200 4
是。我知道我的版本已经过时了。
我检查了request.is_secure
,当我访问HTTPS时它返回True。
答案 0 :(得分:1)
正确,在内部,您将使用http通过代理服务器进行通信,但所有外部流量都将使用https方法。
为了进一步保护您的流量,请确保您只绑定到本地地址,或者使用套接字连接nginx和您的应用服务器。
我希望你没有在生产中使用django的开发服务器,你应该使用类似gunicorn的东西作为你的应用服务器。