设置SECURE_HSTS_SECONDS会不可逆转地破坏您的网站?

时间:2018-03-08 06:29:51

标签: python django

我想在我的Django设置中实现SECURE_HSTS_SECONDS以获得额外的安全性 - 但是Django文档的警告让我感到害怕,所以我想要一些澄清。这就是说:

SECURE_HSTS_SECONDS

Default: 0

If set to a non-zero integer value, the SecurityMiddleware sets the HTTP Strict Transport Security header on all responses that do not already have it.

Warning:

Setting this incorrectly can irreversibly (for some time) break your site. Read the HTTP Strict Transport Security documentation first.

要打破我的网站"会发生什么事?"?我先阅读了HTTP Strict Transport Security documentation,但它并没有让它更清晰。

1 个答案:

答案 0 :(得分:10)

HTTP Strict Transport Security

  

HTTP严格传输安全性允许网站通知浏览器   它永远不应该使用HTTP加载网站,应该自动   转换使用HTTP到HTTPS请求访问站点的所有尝试   代替。它包含一个HTTP头,Strict-Transport-Security,   服务器使用资源发回。

换句话说,如果您将SECURE_HSTS_SECONDS的值设置为例如518400(6天)您的网络服务器将在他第一次访问您的网站时通知您客户的浏览器,以便将来https专门访问您的网站。这适用于整个定义的时期。如果由于任何原因您无法再通过https访问您的网站,则浏览器将无法再访问您的服务。

因此,您最初应将此变量设置为类似60s的低值,并确保一切正常,否则您可能会阻止自己和客户访问您的网站。

P.S:HSTS对将要使用的证书一无所知。您可以续订它,您的客户仍然可以访问您的网站。