删除X-Powered-By

  1. 如何删除PHP中的X-Powered-By头? 我在一个Apache服务器上,我使用PHP 5.21。 我不能在php中使用header_remove函数,因为它不受5.21的支持。 我使用Header unset X-Powered-By,它在我的本地机器上工作,但不在我的生产服务器上。

  2. 如果php不支持ver <5.3的header_remove(),有没有其他的select?

我认为这是由expose_php中的expose_php设置控制的:

 expose_php = off 

决定PHP是否可能暴露它被安装在服务器上的事实(例如,通过将其签名添加到Web服务器头部)。 这在任何方面都没有安全威胁,但它可以确定您是否在服务器上使用PHP。

没有直接的安全风险,但正如David C所指出的那样,暴露一个过时的(也可能是脆弱的)PHP版本可能是人们试图攻击它的邀请。

header_remove( “X供电-通过”);

http://php.net/manual/en/function.header-remove.php

如果您不能禁用expose_php指令来使PHP的健谈变得无声(需要访问php.ini ),那么您可以使用Apache的Header指令来删除标题字段:

 Header unset X-Powered-By 
 if (function_exists('header_remove')) { header_remove('X-Powered-By'); // PHP 5.3+ } else { @ini_set('expose_php', 'off'); } 

如果您有权访问php.ini,请设置expose_php = Off