[root@server etc]# curl -I http://192.168.1.101
HTTP/1.1 301 Moved Permanently
Server: nginx/1.0.5
Date: Thu, 04 Aug 2011 23:54:22 GMT
Content-Type: text/html
Connection: keep-alive
X-Powered-By: PHP/5.3.6
location: forum.php
我们可以看到php版本号和nginx版本号。为了安全起见,最好去掉这些信息。
(-I/--head          Show document info only)
下面说如何去掉这些信息
a.去php版本号
1、修改php.ini
[root@server etc]# vi /usr/local/php/etc/php.ini
将 expose_php = On 更改为 expose_php = Off
2、重启php
[root@server etc]# service php-fpm restart
b.去nginx版本号
1、进入nginx配置文件的目录(此目录根据安装时决定),用vi打开
[root@server conf]# vi nginx.conf
在http { }里加上server_tokens off; 如:
http {
……省略
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
server_tokens off;
…….省略
}
2、编辑php-fpm配置文件,如fastcgi.conf或fcgi.conf(这个配置文件名也可以自定义的,根据具体文件名修改):
找到:
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
改为:
fastcgi_param SERVER_SOFTWARE nginx;
3、重新加载nginx配置(nginx.pid位置根据nginx配置文件决定)
[root@server conf]# kill -HUP `cat /usr/local/nginx/logs/nginx.pid `
这样就完全对外隐藏了nginx版本号了,就是出现404、501等页面也不会显示nginx版本。我猜测51cto就是近期这样更改的。

看下我们更改后的效果:
[root@server conf]# curl -I http://192.168.1.101
HTTP/1.1 301 Moved Permanently
Server: nginx
Date: Fri, 05 Aug 2011 00:15:00 GMT
Content-Type: text/html
Connection: keep-alive
location: forum.php