【发布时间】:2014-07-31 10:13:43
【问题描述】:
我的 Web 应用程序在我控制的不同数量的主机上运行。为了防止需要更改每个虚拟主机的 Apache 配置,我在我的存储库中使用 .htaccess 文件添加了大部分配置,因此每个主机的基本设置只有几行。这也使得在部署新版本时更改配置成为可能。目前 .htaccess (un) 设置标头,执行一些重写魔术并控制 UA 的缓存。
我想使用 .htaccess 在应用程序中启用 HSTS。只需设置标题很容易:
Header always set Strict-Transport-Security "max-age=31536000"
但规范明确指出:“HSTS 主机不得在通过非安全传输传输的 HTTP 响应中包含 STS 标头字段。”。因此,我不想在通过 HTTP 连接发送标头时发送标头。见https://datatracker.ietf.org/doc/html/draft-ietf-websec-strict-transport-sec-14。
我尝试使用环境变量设置标题,但我被困在那里。有谁知道怎么做?
【问题讨论】:
-
Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super User 或Unix & Linux Stack Exchange 会是一个更好的提问地方。另见Where do I post questions about Dev Ops?
-
@jww .htaccess 文件是我的网络应用程序库的一部分,由开发人员维护以获得应用程序的所需行为(例如缓存、重写 url 和设置正确的标题)。这个问题在 SO 上被查看了近 20K 次(并且 [apache]、[.htaccess] 和 [mod-headers] 标签可用)。所以我不认为这是题外话。
-
“.htaccess 文件是我的网络应用程序库的一部分,由开发人员维护......” - 也不是包含在 Stack Overflow 上的标准。一个好的嗅探测试是,你能展示你的代码吗?在这种情况下,答案是否定的。经过检查,它只是一个 Apache 配置问题。 “这个问题被浏览了近 20K 次......” - Stack Overflow 是一个垃圾场。这里提出了一个离题的问题,然后它被搜索引擎索引。该现象的其他示例包括Transferring files over SSH。开发人员有时也会使用 SSH。
标签: apache .htaccess mod-headers