Apache、PHP 隐藏版本信息

http://yfyfj.blog.163.com/blog/static/1542478420111122914470/

一、apache

apache 的httpd.conf 有两个配置可以控制是否显示服务器信息给用户。

对于XAMPP,这两者的配置在conf\extra\httpd-default.conf中。

ServerTokens

ServerSignature

默认条件下会把apache版本系统模块都显示出来(HTTP 返回头)

设置为:

ServerTokens Prod

ServerSignature Off

就隐藏Apache的Apache Version信息。

还有如果列举目录的话会显示域名信息(文件列表正文)
如果不想要就可以调这两个参数
ServerTokens
ServerSignature

ServerSignature On|Off|Email

ServerTokens Minimal|Prod|OS|Full


ServerTokens Prod[uctOnly]
Server sends (e.g.): Server: Apache
ServerTokens Min[imal]
Server sends (e.g.): Server: Apache/1.3.0
ServerTokens OS
Server sends (e.g.): Server: Apache/1.3.0 (Unix)
ServerTokens Full (or not specified)

ServerSignature
控制由系统生成的页面(错误信息,mod_proxy ftp directory listing等等)的页脚中如何显示信息。

可在全局设置文件中控制,或是通过.htaccess文件控制
默认为”off”(ServerSignature Off),有些Linux发行版本可能会打开这个阀门,比如Debian在默认的虚拟主机上默认将这个阀门设置为开放
全局阀门的阀值会被虚拟主机或目录单位的配置文件中的阀值所覆盖,所以,必须确保这样的事情不应该发生
可用的阀值为下面所示:
Off (default): 
不输出任何页脚信息 (如同Apache1.2以及更旧版本,用于迷惑)
On:
输出一行关于版本号以及处于运行中的虚拟主机的ServerName (2.0.44之后的版本,由ServerTokens负责是否输出版本号)
EMail: 
创建一个发送给ServerAdmin”mailto”


二、隐藏PHP 版本

php.ini

expose_php On
改成
expose_php Off

重启apache后,php版本在http头中隐藏了。



posted @   张同光  阅读(122)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示