logo
GeekFormat

HSTS Analyzer

Strict-Transport-Security 解析

分析 HSTS 的 max-age、includeSubDomains、preload 组合是否满足浏览器和 preload 列表要求。

解析摘要

max-age
365d 0h
includeSubDomains
Yes
preload
Yes
Directive Count
3
HSTS 结构看起来没有明显错误

Builder

max-age=31536000; includeSubDomains; preload

JSON 预览

{
  "directives": [
    {
      "key": "max-age",
      "value": "31536000"
    },
    {
      "key": "includesubdomains",
      "value": null
    },
    {
      "key": "preload",
      "value": null
    }
  ],
  "maxAgeSeconds": 31536000,
  "includeSubDomains": true,
  "preload": true,
  "warnings": []
}

在线配 HSTS 策略,先把 HTTPS 强制跳转查清。

相关推荐

适用场景

  • 网站启用 HTTPS 后检查 HSTS 配置是否正确,避免浏览器缓存策略异常
  • 排查子域名混合内容问题时确认 includeSubDomains 指令是否生效
  • 准备提交 HSTS Preload List 前验证 max-age 和 preload 指令是否满足要求
  • 对比不同环境的 HSTS 配置差异时快速解析并查看各项指令状态

功能特点

  • 解析与构建双向操作:既能拆解现有 HSTS 头,也能可视化构造新策略
  • max-age 秒数转可读时间:31536000 秒自动显示为「1 年」,配置更直观
  • 指令级可视化配置:includeSubDomains 和 preload 开关一键切换
  • 内置错误检测:max-age 过短、格式异常等常见问题即时提示

使用方法

  1. 粘贴现有 HSTS 响应头到解析区,或使用构建器配置各字段
  2. 解析模式下查看 max-age(含可读时间)、includeSubDomains、preload 状态和警告信息
  3. 构建模式下设置 max-age 秒数,勾选 includeSubDomains 和 preload 指令
  4. 复制生成的 HSTS 响应头用于服务端配置或对比验证

常见问题

HSTS 的 max-age 应该设置多久?

通常建议至少 31536000 秒(1 年)。工具会把秒数自动转成可读时间,方便判断缓存周期是否合理。

includeSubDomains 和 preload 有什么区别?

includeSubDomains 会让所有子域名也强制走 HTTPS,preload 则允许提交到浏览器内置的 HSTS 预加载列表。两个指令可以一起用,但启用前要确认所有子域名都支持 HTTPS。

解析结果里的警告是什么意思?

工具会检测 max-age 过短、指令缺失或格式不规范等常见问题,并以警告标签形式提示,帮助您在正式启用前排查隐患。

可以直接生成 HSTS 响应头用于服务器配置吗?

可以。配置好各指令后一键生成标准 Header 格式,直接复制到 Nginx、Apache 或网关配置中即可使用。