如果用户不接受 cookie,则禁用 HTTP 严格传输安全 (HSTS)

Disable HTTP Strict Transport Security (HSTS) if user did not accepted cookies

我需要在我的网络服务器上激活 HSTS。但是,如果用户在我的 'do you accept our cookies' 警报上单击 "no" 不允许使用 cookie,我该怎么办?

理论上我可以在这种情况下禁用 HSTS 还是它始终处于活动状态? 我知道这没有意义,但它有用吗?

这是不可能的,因为先有鸡还是先有蛋。 HSTS 是服务器发送的header。服务器知道 忽略 和 header 的唯一方法是客户端是否在请求中发送了一些信号。没有 "opt-out-of-HSTS" 请求 header,因此它必须是永久存储的其他内容,例如……cookie。这显然违背了目的。

此外,服务器将无法在任何首次访问 时设置 HSTS header。这反而违背了 HSTS 的目的。