You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何保护PHP网站免受服务器Banner抓取攻击

解决Apache+PHP7网站的服务器Banner抓取漏洞

你已经添加的ServerTokens Prod和ServerSignature Off是正确的基础配置,但可能还有几个环节需要完善,确保彻底隐藏服务器和PHP的敏感信息:

1. 确认Apache配置的正确性与生效

  • 首先检查配置文件路径:部分Linux发行版(比如Debian/Ubuntu)的Apache主配置文件是/etc/apache2/apache2.conf,而非httpd.conf,如果你的系统属于这类,需要确保修改的是正确的文件。
  • 修改完成后必须重启Apache服务,执行对应命令:
    • Debian/Ubuntu系:systemctl restart apache2
    • RHEL/CentOS系:systemctl restart httpd
  • 验证配置效果:用curl -I 你的网站域名或服务器IP查看响应头,正常情况下Server字段只会显示Apache,不会包含具体版本、操作系统等信息。

2. 隐藏PHP版本信息

PHP7默认会在响应头中添加X-Powered-By: PHP/7.x.x字段,这也会暴露版本信息,需要修改PHP配置:

  • 找到PHP的配置文件php.ini,路径通常为:
    • Debian/Ubuntu系:/etc/php/7.x/apache2/php.ini(x为具体子版本号,比如7.4)
    • RHEL/CentOS系:/etc/php.ini
  • 将配置项expose_php = On修改为expose_php = Off
  • 重启Apache服务使配置生效

3. 额外加固措施

  • 如果网站使用了.htaccess文件,可以在文件中添加ServerTokens Prod和ServerSignature Off,确保虚拟主机或目录层面的配置覆盖。
  • 关闭PHP错误信息的浏览器输出:在php.ini中设置display_errors = Off,同时开启错误日志记录log_errors = On,将错误信息写入指定日志文件(比如error_log = /var/log/php_errors.log),避免泄露服务器环境细节。

内容的提问来源于stack exchange,提问作者Raj Preeti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:35:00