spring-boot - Spring 启动 : Do not send HSTS header

标签 spring-boot xmlhttprequest hsts

在开发环境中,我的浏览器 (Yandex) 将 OPTIONS 请求重定向 (307) 到 URL 的 https 版本。由于我们没有设置 SSL,因此请求失败并显示错误 Response for preflight is invalid (redirect)

最佳答案

如果您没有设置 HTTPS,则永远不应读取 HSTS 值 - 浏览器必须忽略通过未加密的 HTTP 连接发送的 HSTS。

如果您曾经有 HTTPS 但现在不再有(或者如果您的某些域/页面上有 HTTPS),那么您的浏览器可能已经缓存了 HSTS 设置,以用于浏览器上次设置的任何 max-age 值阅读标题。您需要在浏览器中清除它。如何做到这一点因浏览器而异,但在所有浏览器中工作的一种更简单的方法是像您所做的那样发布一个最大年龄为 0 的新 HSTS header ,然后通过 HTTPS 访问页面(而不是未加密的协议(protocol))。这显然需要你有一个你说你没有的 HTTPS 设置?在所有浏览器都为所有受影响的域设置了新设置后,您就可以完全停止发布该 HSTS header 。

当浏览器缓存了以前的版本时,跳过重置步骤并仅关闭 header 是行不通的 - 至少在浏览器的缓存版本在 max-age 时间过期之前是这样。

关于spring-boot - Spring 启动 : Do not send HSTS header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49201779/

相关文章:

youtube - 浏览器证书不适用于谷歌和其他一些网站

java - 通过命令行选择application.properties文件

mongodb - jhipster - 如何掌握数据管理和微服务通信?

java - com.petar.demoreferrals.service.impl.UserServiceImpl 中的字段存储库需要一个 bean

javascript - XMLHttpRequest 中默认的 Content-Type 是什么?

php - $_SERVER ["CONTENT_LENGTH"] 使用 XmlHttpRequest 上传文件时返回零

javascript - 如何让本地 html 文件在 firefox 17 中发出 XHR 跨域请求?

scala - 如何使用 scala 代码在 Play framework 2.3.x 中启用 HSTS?

java - 使用 Java/SpringBoot 为 token 绑定(bind)协议(protocol)协商启用 TLS 扩展

http - HTTP header 是否区分空格/大小写/顺序?