HSTS是否将所有资源升级到HTTPS,而不管域名是什么

问题描述:

我正在将HTTP Strict Transport Security标头添加到网站。HSTS是否将所有资源升级到HTTPS,而不管域名是什么

它是否阻止通过不在同一域中的HTTP加载资源?

HSTS仅适用于与其一起发送的域,以及任何子域(如果还设置了includeSubDomains属性)。

其他任何域都不受影响。

但有一点需要注意的是,如果您的主域(www.example.com)使用与裸域(example.com)相同的配置,这很常见,并且您在两个域(可能没有意识到它也在裸露的域中)并使用includeSubDomains标头。如果是这种情况,那么您可以轻松阻止访问其他域名(如http://blog.example.comhttp://internal.example.com),如果有人访问裸露的域名,这些域名仍然位于http上。

顺便说一句,如果你想升级所有http请求到https,你可以使用内容安全策略(CSP),它具有升级不安全请求选项。但是browser support of that is not yet universal。您也可以使用CSP来帮助您确定混合内容,如here所述。