我正在将HTTP 严格传输安全标头添加到网站。
它是否会阻止通过 HTTP 加载不在同一域中的资源?
HSTS 仅适用于发送它的域,如果还设置了 includeSubDomains 属性,则适用于任何子域。
任何其他域都不受影响。
但是要注意的一件事是,如果您的主域 (www.example.com) 使用与裸域 (example.com) 相同的配置,这很常见,并且您在两者上都发出 HSTS 标头(可能没有意识到它也在裸域上)并使用 includeSubDomains 标头。如果是这种情况,那么您可以轻松阻止对您不打算访问的其他域的访问,如果有人访问这些域,这些域仍在 http(例如http://blog.example.com或http://internal.example.com )裸域。
顺便说一句,如果您想将所有 http 请求升级到 https,您可以使用具有 upgrade-insecure-requests 选项的内容安全策略 (CSP)。然而,浏览器对此的支持还不是普遍的。您还可以使用 CSP 来帮助您识别此处讨论的混合内容。