开启HSTS功能后您可以强制客户端使用HTTPS与服务器创建连接,帮助网站进行全局加密,降低第一次访问被劫持的风险。

前提条件

您已成功配置HTTPS证书,具体操作请参见HTTPS配置

背景信息

HSTS(HTTP Strict Transport Security)是国际互联网工程组织IETE推行的Web安全协议,通过强制客户端(例如浏览器等)使用HTTPS与服务器创建连接,帮助网站进行全局加密。

当您的网站全站使用HTTPS后,需要将所有HTTP请求的301和302重定向到HTTPS。如果您在浏览器输入或直接单击HTTP链接,则服务器会将该HTTP请求的301和302重定向到HTTPS。该操作过程中请求可能被劫持,导致重定向后的请求未发送到服务器,该问题可以通过HSTS来解决。

HSTS是一个响应头,HSTS的响应头结构为:Strict-Transport-Security: max-age=expireTime [; includeSubDomains] [; preload],具体参数说明如下表所示。
参数 说明
Strict-Transport-Security 在浏览器缓存的时间。浏览器处理域名的HTTP访问时,若该域名的Strict-Transport-Security没有过期,则在浏览器内部做一次307重定向到HTTPS,从而避免浏览器和服务器之间301和302重定向被劫持的风险。
max-age HSTS Header的过期时间,单位为秒。
includeSubDomains 可选参数。如果指定这个参数,说明该域名及其所有子域名均开启HSTS。
preload 可选参数。当您申请将域名加入到浏览器的内置列表时需要使用preload列表。
说明
  • HSTS生效前第一次需要将301和302重定向到HTTPS。
  • HSTS响应头在HTTPS访问的响应中有效,在HTTP访问的响应中无效。
  • HSTS仅对域名和403端口有效,对IP和其他端口无效。

操作步骤

  1. 登录SCDN控制台
  2. 在左侧导航栏,单击域名管理
  3. 域名管理页面,定位目标域名,在目标域名右侧单击配置
    回源SNI 01
  4. 在指定域名的左侧导航栏,单击HTTPS配置
  5. HSTS区域,单击修改配置
  6. 打开HSTS开关,根据您的实际需求,配置过期时间包含子域名
  7. 单击确认,完成配置。