1.如何删除PHP中的X-Powered-By头文件?我在Apache服务器上,我使用的是PHP 5.21。我不能在php中使用header_remove函数,因为5.21不支持它。我使用Header unset X-Powered-By,它在我的本地机器上工作,但在我的生产服务器上不工作。1.如果php不支持< 5.3版本的header_remove(),有替代方案吗?
ma8fv8wu1#
我认为这是由PHP.ini中的expose_php设置控制的:
expose_php
expose_php = off
决定PHP是否可以暴露它安装在服务器上的事实(例如通过将其签名添加到Web服务器头)。它在任何方面都没有安全威胁,但它可以确定您是否在服务器上使用PHP。没有直接的安全风险,但正如大卫C所指出的,公开一个过时的(可能是脆弱的)PHP版本可能会邀请人们尝试攻击它。
3htmauhk2#
header_remove("X-Powered-By");
https://secure.php.net/manual/en/function.header-remove.php
kq0g1dla3#
如果您无法禁用 expose_php 指令来屏蔽PHP的多话(需要访问 * php.ini *),您可以使用Apache的Header指令来删除头字段:
Header
Header unset X-Powered-By
hl0ma9xz4#
if (function_exists('header_remove')) { header_remove('X-Powered-By'); // PHP 5.3+ } else { @ini_set('expose_php', 'off'); }
gdrx4gfi5#
如果你可以访问php.ini,设置expose_php = Off。
expose_php = Off
pbpqsu0x6#
尝试在发送头之前添加一个header()调用,例如:
header('X-Powered-By: Our company\'s development team');
无论php.ini中的expose_php设置如何
n3ipq98p7#
如果使用FastCGI,请尝试:
fastcgi_hide_header X-Powered-By;
vvppvyoh8#
要隐藏X-Powered-By:PHP/7.x.x,如果您使用的是共享主机,VPS,云服务器,则在.htaccess文件中添加以下代码
Header always unset X-Powered-By Header unset X-Powered-By
适用于:Wordpress, Codeigniter, Laravel, Php
Wordpress, Codeigniter, Laravel, Php
ztyzrc3y9#
这个解决方案对我很有效:)请在脚本中添加以下行并检查。可能不需要Ngnix / Apache等级别设置。
header("Server:");
9条答案
按热度按时间ma8fv8wu1#
我认为这是由PHP.ini中的
expose_php
设置控制的:决定PHP是否可以暴露它安装在服务器上的事实(例如通过将其签名添加到Web服务器头)。它在任何方面都没有安全威胁,但它可以确定您是否在服务器上使用PHP。
没有直接的安全风险,但正如大卫C所指出的,公开一个过时的(可能是脆弱的)PHP版本可能会邀请人们尝试攻击它。
3htmauhk2#
https://secure.php.net/manual/en/function.header-remove.php
kq0g1dla3#
如果您无法禁用 expose_php 指令来屏蔽PHP的多话(需要访问 * php.ini *),您可以使用Apache的
Header
指令来删除头字段:hl0ma9xz4#
gdrx4gfi5#
如果你可以访问php.ini,设置
expose_php = Off
。pbpqsu0x6#
尝试在发送头之前添加一个header()调用,例如:
无论php.ini中的expose_php设置如何
n3ipq98p7#
如果使用FastCGI,请尝试:
vvppvyoh8#
要隐藏X-Powered-By:PHP/7.x.x,如果您使用的是共享主机,VPS,云服务器,则在.htaccess文件中添加以下代码
适用于:
Wordpress, Codeigniter, Laravel, Php
ztyzrc3y9#
这个解决方案对我很有效:)
请在脚本中添加以下行并检查。
可能不需要Ngnix / Apache等级别设置。