You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在www子域上正确应用Strict-Transport-Security头?

HSTS配置相关疑问解答

背景信息

我打算给网站的HTTPS响应添加带includeSubDomains和preload选项的Strict-Transport-Security头,格式如下:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

我的主机服务商设置的重定向流程是:

  • http -> https -> https://www.
  • https -> https://www.

所有用户最终都会访问https://www.example.com。我注意到亚马逊采用类似的重定向流程,仅在www响应中返回HSTS头,且HSTS预加载列表中仅注册了www.amazon.de而非amazon.de。

疑问

  1. 若在www.example.com上添加带includeSubDomains的HSTS,是否意味着admin.example.com等其他子域无法得到保护?www子域是否存在例外规则?
  2. 若将www.example.com注册到HSTS预加载列表,是否example.com仍无法防范首次请求的风险?
  3. 当已有http->https重定向且主域未预加载时,在www站点配置HSTS的意义是什么?

解答

问题1

是的,admin.example.com这类子域无法通过www.example.com的HSTS头得到保护。HSTS的includeSubDomains规则是按域名层级生效的——www.example.com的子域是xxx.www.example.com这类层级,而admin.example.com是主域example.com的直接子域,不在www.example.com的子域范围内,自然不会被覆盖。不存在针对www子域的特殊例外规则,完全遵循域名层级的匹配逻辑。

问题2

没错,example.com依然会面临首次请求的风险。HSTS预加载列表是按单个域名独立注册的,注册www.example.com只会让浏览器对这个域名强制使用HTTPS;主域example.com不在预加载列表内的话,用户第一次访问example.com时,浏览器还是会先发起HTTP请求,存在被劫持的可能。

问题3

这种配置的核心意义有两点:

  • 锁定www域名的HTTPS访问:用户访问www.example.com一次后,后续所有对该域名的请求都会被浏览器强制转为HTTPS,避免了该域名本身被降级到HTTP的风险,哪怕重定向环节出现故障也能保障安全。
  • 配合重定向流程强化安全:虽然主域没预加载,但用户最终都会落到www.example.com,一旦浏览器缓存了这个域名的HSTS规则,后续任何指向www.example.com的访问(包括从其他页面跳转、用户手动输入)都会直接走HTTPS,省去了重定向步骤,也杜绝了这一环节的劫持风险。

内容的提问来源于stack exchange,提问作者Deivydas Voroneckis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 07:05:12