HSTS 预加载标头生成器
根据 max-age、includeSubDomains 和 preload 生成 Strict-Transport-Security (HSTS) 响应标头,并检查其是否符合 hstspreload.org 预加载列表的提交要求。
输入
浏览器记住仅使用 HTTPS 的时长(秒)。提交预加载需要至少 31536000(1 年)。
输出
将此内容粘贴到服务器的响应标头配置中。
该标头是否符合 hstspreload.org 的指令要求。
使用此工具的更多方式
REST API
curl -X POST https://api.iotools.cloud/v1/tool/hsts-preload-header-generator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"maxAge": "31536000",
"includeSubDomains": "true",
"preload": "true"
}'替换成您账户中的密钥。工具的字段即为请求体——没有额外包装。
让 AI 代理执行
Use the IOTools `hsts-preload-header-generator` tool (HSTS Preload Header Generator) on this input:
YOUR_INPUT_HERE将此粘贴给任何已连接 IOTools MCP 服务器的代理,再加上您的输入内容。
嵌入式小组件
<iframe
src="https://iotools.cloud/embed/hsts-preload-header-generator/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="HSTS 预加载标头生成器 — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>把它放到您自己的页面上——免费,无需密钥,只需保留一个反向链接。
| 每次 API/MCP 调用费用 | 5 积分起 |
|---|---|
| 需要更多积分? | 查看定价 |
也可通过
使用指南
HSTS 预加载标头生成器可生成格式正确的 Strict-Transport-Security HTTP 响应标头,并实时告知结果是否符合 hstspreload.org 浏览器预加载列表的要求。设置 max-age,开启 includeSubDomains 和 preload,然后将标头直接复制到服务器配置中。
什么是 HSTS?
HTTP 严格传输安全(HSTS)由 RFC 6797 定义,是一种响应标头,指示浏览器只能通过 HTTPS 连接您的网站。浏览器一旦收到 Strict-Transport-Security 标头,就会在 max-age 指定的时长内拒绝与该主机的明文 HTTP 连接,并在请求离开设备前自动将 http:// 请求改写为 https://。这可以防止协议降级攻击、SSL 剥离以及通过不安全连接劫持 Cookie。
什么是 HSTS 预加载?
即使启用了 HSTS,用户的首次访问——在收到任何标头之前——仍可能通过 HTTP 进行,从而留下一个小的攻击窗口。预加载可以弥补这一缺口。HSTS 预加载列表中的域名会被直接内置到 Chrome、Firefox、Safari、Edge 等浏览器中,因此从第一次请求起就被视为仅限 HTTPS,无需事先访问。
如何使用此工具
- 以秒为单位输入
max-age。默认值31536000为一年,是预加载接受的最低值。 - 勾选
includeSubDomains,将策略扩展到所有子域名。 - 勾选
preload,将该域名标记为预加载列表候选。 - 从输出框复制生成的标头,并将其添加到您的 Web 服务器或应用配置中。
“预加载资格”面板会根据提交规则检查您的指令,并标出缺失的内容。
指令参考
max-age=<秒>— 必填。浏览器对该主机强制仅使用 HTTPS 的时长。includeSubDomains— 可选,但预加载必需。将策略应用于所有子域名。preload— 表示同意被添加到浏览器预加载列表中。
hstspreload.org 的要求是什么?
要被接受,标头必须将 max-age 设置为至少 31536000(一年),并同时包含 includeSubDomains 和 preload。此外,网站必须提供有效的 HTTPS 证书,并将同一主机上的所有 HTTP 流量重定向到 HTTPS。本工具只验证指令要求;证书和重定向要求必须在您自己的服务器上确认。
预加载可以撤销吗?
不容易。删除请求可能需要数月才能通过浏览器版本更新传播,在此期间浏览器会拒绝任何 HTTP 回退。只有在确保每个子域名都可靠地通过 HTTPS 提供服务后,才应提交域名进行预加载。
应该使用什么 max-age?
测试时请先使用较短的 max-age(几分钟或几小时),以便错误能迅速过期。确信所有资源都能正常通过 HTTPS 工作后,再将其提高到一年(31536000)或两年(63072000),并添加 preload。
此工具会提交我的域名吗?
不会。所有操作都在您的浏览器中完成——本工具只生成标头字符串并检查指令。服务器准备就绪后,请自行在 hstspreload.org 提交域名。