2019年7月1日
Django 2.1.10在2.1.9中修复了一个安全问题。
当部署在通过HTTPS连接到Django的反向代理之后时, django.http.HttpRequest.scheme
将错误地检测通过HTTP发出的客户端请求,因为它使用了HTTPS。这会导致错误的结果 is_secure()
和 build_absolute_uri()
,并且HTTP请求不会根据 SECURE_SSL_REDIRECT
.
HttpRequest.scheme
现在尊重 SECURE_PROXY_SSL_HEADER
,如果已配置,并且在请求上为HTTP和HTTPS请求设置了适当的头。
如果将django部署在转发HTTP请求的反向代理之后,并通过HTTPS连接到django,请确保应用程序正确处理依赖于 scheme
, is_secure()
, build_absolute_uri()
和 SECURE_SSL_REDIRECT
.
12月 18, 2023