如果我在已经实现 301 重定向的域上设置 HSTS,哪个优先?

If I set up HSTS on a domain that already implements a 301 redirect, which will take precedence?

好的,假设我们有一个当前使用 301 重定向的 http 域,我们希望将此域更改为不再使用 301 重定向,而是作为所述网站的主域。

这里的问题是 301 重定向会被永久缓存,所以这不太可行。

但是,我们确实希望仅在 https 上将域更改为 运行,并且 https 域没有任何重定向设置。

所以我想知道如果我在已经实现 301 重定向的域上实现 HSTS,用户是否会被转发到页面的 HTTPS 版本(目前没有适当的重定向)。这是假设他们已经在浏览器中缓存了 301 重定向。

不幸的是,我似乎找不到任何关于 HSTS 或缓存的 301 重定向是否优先的信息。

HSTS 应该优先于浏览器中发生的情况 - 在发送任何消息之前(或使用任何缓存的重定向来代替发送的请求)。

然而,这很容易测试,所以建议您自己确认。

是的,我真的希望浏览器能够遵守 301s and/or 的缓存过期时间并定期过期。很烦人。