http - hsts 预加载如何在后端工作

标签 http ssl https preload hsts

我知道如果我的网站在预加载列表中注册,hsts(http 到 https)将从第一次开始工作。
另一方面,我还在我的 Web 服务器的 hsts header 中声明预加载。
如果我第一次使用 http 访问我的网站怎么办?哪个会先发生?
我的意思是网站会先访问预加载列表还是先访问 Web 服务器?
enter image description here

最佳答案

您需要将您的网站提交到浏览器预加载列表。然后它会发出预加载 header (以防止不良行为者在不需要时将站点提交到预加载列表),并将其包含在 future 版本的内置列表中。
一些浏览器还会定期扫描或抓取网站,以查找包含要包含的预加载 header 的网站。尽管我认为这样做的次数较少,但最好明确提交您的网站。
在网站被包含在浏览器预加载列表中后,对 http://版本的请求将自动转换为 https://。这发生在您发送请求之前,因此在您获得 HSTS header 响应之前。
这就是预加载的重点——甚至在您提出单个请求之前保护您。
就我个人而言,我不喜欢预加载。将网站列表硬编码到浏览器中存在明显的扩展问题,但更重要的是,当你这样做时,你会冒一些风险,如果不等待浏览器供应商几个月甚至几年的时间来获取恢复的内容,你就无法改回来设置删除代码。我个人认为预加载对于大多数网站来说都是多余的。

关于http - hsts 预加载如何在后端工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63985004/

相关文章:

javascript - 如何检查我的 XMLHttpRequest post 方法是否成功?

http - 如何在OSB中为HTTP后端服务实现选择性错误重试

c# - 如何允许在 IIS 7.5 中下载任何文件

java - Jetty 9 托管具有多个 SSL 证书的多个虚拟主机

.net - 从安全网站抓取数据或自动执行日常任务

java - jetty SSL 密码

rest - 我的服务器是否应该传递来自 'nested'/proxy 请求的 http 状态代码?

asp.net - 1-2 天后发生 URL 意外以 '/Convert' 结尾的请求格式无法识别

javascript - Hapijs 查询参数未定义

node.js - CloudFlare "SSL: Flexible"HTTPS 不适用于自定义端口