默认情况下,如果Web Server使用的是Apache,会在header文件中显示Apache的版本信息和一些其他组件的信息。在本教程中,会教大家如何修改Apache的配置文件,隐藏Apache的版本等信息。
Apache配置文件的路径:
- /etc/httpd/conf/httpd.conf (RHEL/CentOS/Fedora)
- /etc/apache/apache2.conf (Debian/Ubuntu)
Apache显示信息主要由 ServerSignature 和 ServerTokens 两个参数控制,建议修改为:
ServerSignature Off ServerTokens Prod
ServerSignature 控制服务器产生的页面中显示Apache的信息,比如404页面。它有三个值,分别是Off、On和Email。如果设置为Off,则不显示,On和Email区别不大,Email会自动给ServerAdmin加一个mailto的链接地址。下图为ServerSignature设置为Off
显示的情况:
ServerTokens 控制在header文件中显示Apache的信息,有六个值,分别是ProductOnly,Major,Minor,Minimal,OS和Full。下图为 ServerTokens 设置为Off显示的情况:
当设置为Prod
(ProductOnly的缩写)时,header会显示:
Server: Apache
当设置为Major
时,header会显示:
Server: Apache/2
当设置为Minor
时,header会显示:
Server: Apache/2.0
当设置为Min
(Minimal的缩写)时,header会显示:
Server: Apache/2.0.41
当设置为OS
时,header会显示:
Server: Apache/2.0.41 (Unix)
当设置为Full
时,header会显示类似的信息:
Server: Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2
扩展阅读:
隐藏 X-Powered-By 中显示PHP版本信息,找到php.ini文件,把expose_php设置为off:
expose_php = off
参考文档:https://httpd.apache.org/docs/2.4/mod/core.html#servertokens