方法一:将header设置不显示相关信息

当我们部署完LAMP后,测试页面输出时,可以看到http响应头里有如下header:

Server:

Apache/2.2.3 (Red Hat)

X-Powered-By:

PHP/5.1.6

显示了服务器一些敏感信息,这是不安全的,因此我们需要调整

 

关闭 "X-Powered-By: PHP/5.1.6" 的显示:

修改php.ini

expose_php = Off

 

简化 "Server:Apache/2.2.3 (Red Hat)" 的输出:

修改httpd.conf,增加 

ServerTokens Prod  


方法二:自定义header 

转载原始出处:http://linuxlovers.blog.51cto.com/6787002/1398342

1、安装mod_headers.c模块

1
2
3
4
5
6
7
8
9
[root@localhost ~]# cd /usr/local/src/httpd-2.2.16/modules
[root@localhost modules]# ls
aaa         database  experimental  ldap         mappers        README
arch        dav       filters       loggers      metadata       ssl
cache       debug     generators    Makefile     NWGNUmakefile  test
config5.m4  echo      http          Makefile.in  proxy
[root@localhost modules]# cd metadata/
[root@localhost metadata]# /usr/local/apache2/bin/apxs -i -a -c -n headers mod_headers.c
//用apxs工具添加模块

2、修改Apache配置文件

1
2
3
4
[root@localhost htdocs]# vim /usr/local/apache2/conf/httpd.conf
<IFModule mod_headers.c>
Header add MyHeader "hello"
</IFModule>

3、测试

1
2
3
4
5
6
7
[root@localhost htdocs]# curl -I 192.168.0.104/1.php
HTTP/1.1 200 OK
Date: Sat, 19 Apr 2014 02:45:13 GMT
Server: Apache/2.2.16 (Unix) PHP/5.3.27
X-Powered-By: PHP/5.3.27
MyHeader: hello   //定义的header
Content-Type: text/html