在 Apache2 中删除 http 标头

Posted

技术标签:

【中文标题】在 Apache2 中删除 http 标头【英文标题】:Removing http headers in Apache2 【发布时间】:2011-05-26 17:42:26 【问题描述】:

在 Apache2.2.9 托管站点上,我想删除下面的标题。

2010 年 12 月 16 日星期四 17:49:45 GMT 服务器阿帕奇 保活超时=15,最大值=92 连接保持活动

让我先讨论一下删除服务器和日期是否正确/合法/好:我已经阅读了标准,但我仍然想这样做。节省的字节数很大(平均响应大小约为 200B)。

在我的 site.conf 中(最后从 apache2.conf 加载)我试过这个没有成功:

    Header unset Date
    Header unset Server
    Header unset Connection 
    Header unset Keep-Alive

其他未设置的 Header 指令确实有效(因此加载了 mod_headers)。

【问题讨论】:

【参考方案1】:

你注意到这个bug report了吗?无法取消设置某些标头是 Apache 中的一个设计问题。附加的补丁包含一种删除服务器标头的方法。简单地看一下,似乎可以在 modules/http/http_filters.c 的第 1000 行附近完成其余不需要的默认包含的标头...

【讨论】:

有趣的答案..你有补丁吗?在第 1000 行附近,它说 form_header_field(&h, "Server", server); 什么是允许我取消设置所有标题的补丁?

以上是关于在 Apache2 中删除 http 标头的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Azure Functions 的 HTTP 响应中删除标准标头?

如何删除 AFNetworking 中的 http 标头选项?

在没有UrlScan的情况下删除/隐藏/禁用Azure / IIS7中过多的HTTP响应标头

如何删除 HTTP 响应标头?

Apache 2.4 + PHP-FPM 和授权标头

怎么删除http响应消息中关于jetty的server标头信息