我正在寻找在 Apache 中添加 HSTS 标头...
# HSTS / Header Strict Transport Security
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
... 但我有一个很长的 vhost 列表,用于不同但相关的站点/子站点。我宁愿不必在每个 vhost 定义中都定义它,但我不知道如何在主文件中包含https.conf
仅适用于443 / https
这些 vhost 版本的设置,因为当您将 HSTS 应用于标准80 / http
站点时,它会在验证器中引发警告。
我试过用<IfModule mod_ssl.c>...</IfModule>
标签包裹它,但如果我没记错的话,这实际上只是在问SSL模块是否加载? 我尝试过很多不同的搜索方式,但当你不知道要查找的术语时,很难对所有静态内容进行分类。有什么建议吗?谢谢!
答案1
REQUEST_SCHEME
:请求 URI 的方案部分<If "%{REQUEST_SCHEME} == 'https'"> Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains" </If>
HTTPS
:on
如果请求使用 https,off
否则<If "%{HTTPS} == 'on'"> Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains" </If>