HSTS(Strict-Transport-Security 标头)是用于 HTTP 还是 HTTPS?

信息安全 tls http 网址重定向 hsts
2021-08-27 23:15:15

Strict-Transport-Security 标头是用于 HTTP 还是 HTTPS?我的意思是,我是否在 HTTP 连接上使用此标头进行响应,这反过来又告诉浏览器从那时起仅使用 HTTPS?或者,此标头是否仅用于 HTTPS 响应,并且会告诉浏览器从那时起仅使用 HTTPS?

如果客户端尝试在 HTTP 下访问我的站点,我正在尝试使我的站点从 HTTP 重定向到 HTTPS。因此,我对是否将 strict-transport-security 标头用于此目的或可用于此目的感兴趣。

1个回答

HSTS规范草案包含了一章服务器处理模型它描述了安全请求的预期行为

当回复通过安全传输传输的 HTTP 请求时,HSTS 主机应在其响应消息中包含 STS 标头字段 […]

对于非安全请求

如果 HSTS 主机通过非安全传输接收 HTTP 请求消息,它应该发送包含指示永久重定向的状态代码的 HTTP 响应消息 […]

这也反映在Wikipedia 的HTTP Strict Transport Security文章的各种实现示例中