【问题标题】:Server Signuture turn off need access to php.ini服务器签名关闭需要访问 php.ini
【发布时间】:2011-09-09 04:01:57
【问题描述】:

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

ServerSignature Off
ServerTokens Prod

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

【问题讨论】:

    标签: php httpd.conf


    【解决方案1】:

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

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

    这些值也显示在 apache 发送到浏览器的 http 响应标头中,所以也许您可以通过 header 函数用 php 覆盖它们,使用可选参数 $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 标头。

    【讨论】:

      猜你喜欢
      • 2015-01-30
      • 1970-01-01
      • 1970-01-01
      • 2011-03-28
      • 1970-01-01
      • 2012-09-25
      • 2014-03-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多