我正在为一款基于 Web 的手机游戏开发一个私人服务器应用程序,该应用程序使用 php 生成响应。为了做到这一点,我尝试尽可能地复制主服务器的行为。
主服务器包含标准 Apache 响应标头Date
和Server
,但这些标头前面总是有标头authorize
、Content-Encoding
和Content-Type
。
我在 Centos 6 上运行 apache 2.4.12,无论我尝试什么,服务器总是先发送Date
和Server
标头。
例如,当前标题顺序:
HTTP/1.1 200 OK
Date: Mon, 18 May 2015 15:48:33 GMT
Server: Apache
authorize: <authToken>
Content-Encoding: gzip
需要发送为:
HTTP/1.1 200 OK
authorize: <authToken>
Content-Encoding: gzip
Content-Type: application/json; charset=utf-8
Date: Sat, 16 May 2015 02:59:12 GMT
Server: Apache
我意识到服务器字段的顺序并不重要,但是为了不呈现任何可用于识别服务器与原始服务器不同的内容,我想保留原始服务器的行为。
我的第一印象是这可能是可以通过 modsecurity 改变的东西,然而我在这种方法上遇到了死胡同,因为除了重写服务器标签(生成时没问题)之外,响应标头似乎不可更改(就像响应主体一样)。
Mod_headers 似乎也无法触及Server
标头。它似乎也没有提供任何可能改变已设置标头顺序的功能。
有谁知道有什么方法可以在 http 响应中将标头添加到这两个标头上方?我怀疑需要一些第三方工具。