通过开启HSTS(HTTP Strict Transport Security)功能,您可以强制客户端(例如:浏览器)使用HTTPS与服务器创建连接,降低第一次访问请求被拦截的风险。

前提条件

执行该操作前,请您确保已成功配置HTTPS证书,操作方法请参见配置HTTPS证书

背景信息

当您全站使用HTTPS请求时,在浏览器输入或直接单击HTTP链接,服务器会将该HTTP请求301/302重定向到HTTPS。该操作过程中请求可能被拦截,导致重定向后的请求未发送到服务器,该问题可以通过HSTS来解决。

浏览器处理域名的HTTP访问时,若该域名的HSTS没有过期,则在浏览器内部做一次307重定向到HTTPS,从而避免浏览器和服务器之间301/302重定向请求被拦截的风险。

HSTS响应头结构为:Strict-Transport-Security:max-age=expireTime [;includeSubDomains] [;preload],参数说明如下表所示。
参数 说明
max-age HSTS Header的过期时间,单位为秒。
includeSubDomains 可选参数。如果包含这个参数,说明该域名及其所有子域名均开启HSTS。
preload 可选参数。当您申请将域名加入到浏览器内置列表时需要使用preload列表。
说明
  • HSTS生效前,第一次需要将301/302重定向到HTTPS。
  • HSTS响应头在HTTPS访问的响应中有效,在HTTP访问的响应中无效。
  • 仅对443端口有效,对其他端口无效。
  • 仅对域名有效,对IP无效。

操作步骤

  1. 登录CDN控制台
  2. 在左侧导航栏,单击域名管理
  3. 域名管理页面,单击目标域名对应的管理
  4. 在指定域名的左侧导航栏,单击HTTPS配置
  5. HSTS区域,单击修改配置
  6. HSTS设置对话框,打开HSTS开关
  7. 配置过期时间,打开包含子域名开关。
    说明
    • 过期时间表示HSTS响应头在浏览器的缓存时间,建议填入60天,可填时间范围为0-730天。
    • 开启包含子域名开关前,请确保该加速所有子域名都已开启HTTPS,否则会导致子域名自动跳转到HTTPS后无法访问。
    HSTS设置
  8. 单击确定