Server Signature关闭需要访问php.ini

时间:2011-06-06 09:53:21

标签: php httpd.conf

我想将以下设置添加到我的服务器:

ServerSignature Off
ServerTokens Prod

然而,经过研究,我必须在我的httpd.conf或apache2.conf文件中添加这些设置。它不会在我的公共webroot上的php.ini或.htaccess中工作。如果我无法访问这两个服务器文件(httpd.conf或apache2.conf),我如何才能访问,或者是否有其他方法可以使这些设置正常工作。我需要尽快解决这个安全问题。感谢

1 个答案:

答案 0 :(得分:0)

不,你不能通过php或任何其他语言配置Apache(因为它们是apache设置)。

您可以隐藏这些值,使用一些mod_rewrite显示在错误页面上,任何对服务器或Web应用程序的请求都会定向到输出您想要的任何错误的php脚本。

这些值也显示在apache发送给浏览器的http响应头中,所以也许你可以通过header函数用php覆盖它们,使用可选的param $bool_replace = true(是默认值):

header("Server: IIS/6.0", true); // this will fool observers
header("X-Powered-By: Feces-Throwing-Monkey 3.14", true);

编辑:从php的标题文档中的comment判断,这是有效的,您还应该覆盖X-Powered-By标题。