如何使用php-fastcgi删除nginx中的“Client-Peer”(etc)头

我的设置:

>操作系统:Ubuntu 11.04
> HTTP服务器:Nginx 1.2.1

>使用HttpHeadersMore模块编译
>通过PHP-fastcgi处理PHP

>(其他不相关的软件 – ruby​​,python等)

我的问题:

我试图完全掩盖服务页面的软件(部分安全性,主要是因为它很有趣),我设法改变了服务器名称删除PHP-fastcgi添加的X-Powered-By标头,但是我移除三个标题时遇到问题:

Client-Date: Thu,14 Jun 2012 20:32:34 GMT
Client-Peer: 205.186.146.37:80
Client-Response-Num: 1

我已经使用了HttpHeadersMore模块中的more_clear_headers但是没有效果,尽管能够删除X-Powered-By标头.

这是我的http块

more_set_headers "Server: Tesco Value";
more_clear_headers "X-Powered-By";
more_clear_headers "Client-*";
more_clear_headers "Client-Date";
more_clear_headers "Client-Response-Num";
more_clear_headers "Client-Peer";
more_clear_headers "X-Pingback";

add_header X-required-Volume-Setting 11;
add_header X-required-Speed 88mph;

# NEW: added in thanks to the answer from @kworr - but still doesn't work
fastcgi_hide_header "Client-Date";
fastcgi_hide_header "Client-Response-Num";
fastcgi_hide_header "Client-Peer";

如果您运行HEAD slightlymore.co.uk,您将看到显式规则或通配符规则都没有删除标题.我猜这些标题是在输出标题过滤阶段之后设置的 – 但是我想知道是否有人有关于此的更多信息,特别是如果有人有解决方案.

UPDATE

@kworr建议fastcgi_hide_header可能是我正在寻找的 – 但仍然无效.也许这只是我的系统?

这些标头根本不存在于HTTP响应中.无论是Nginx还是PHP-fpm都没有发送过它们,所以试图阻止它们是毫无意义的.

它们是用户代理libwww-perl添加到响应中的合成响应头.

如果您不希望看到它们,请使用其他库(例如libcurl)发出HTTP请求.

相关文章

Hessian开源的远程通讯,采用二进制 RPC的协议,基于 HTTP 传输。可以实现PHP调用Java,Python,C#等多语...
初识Mongodb的一些总结,在Mac Os X下真实搭建mongodb环境,以及分享个Mongodb管理工具,学习期间一些总结...
边看边操作,这样才能记得牢,实践是检验真理的唯一标准.光看不练假把式,光练不看傻把式,边看边练真把式....
在php中,结果输出一共有两种方式:echo和print,下面将对两种方式做一个比较。 echo与print的区别: (...
在安装好wampServer后,一直没有使用phpMyAdmin,今天用了一下,phpMyAdmin显示错误:The mbstring exte...
变量是用于存储数据的容器,与代数相似,可以给变量赋予某个确定的值(例如:$x=3)或者是赋予其它的变...