Nginx默认是显示版本号的。前些时间网上曝出Nginx的版本漏洞,如果你的网站通过curl -I http://域名或者IP 可以看到Nginx的版本,那么这些信息就有可能被攻击者利用。从网站安全的角度来说,隐藏掉Nginx的版本号相对安全一些。
具体方法是:
1.进入Nginx的配置文件目录,vim nginx.conf,在http{-}的区域添加:server_tokens off;
http {
......省略
sendfile on;
keepalive_timeout 60;
server_tokens off;
......省略
}
2. 编辑php-fpm的配置文件,如:fastcgi.conf、fastcgi_params、fcgi.conf文件,修改方法为:
找到:fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
改为:fastcgi_param SERVER_SOFTWARE nginx;
3.重新加载nginx的配置文件:/usr/local/nginx/sbin/nginx -s reload
或者平滑重启Nginx:
查找nginx主进程号:ps -ef|grep "nginx: master process"|grep -v "grep" |awk -F ' ' '{print $2}'
kill -HUP nginx主进程号
隐藏PHP的版本号,需要修改PHP的配置文件php.ini。具体过程如下:
vim php.ini,
找到expose_php = On
改为:expose_php = Off
重启PHP的PHP-fpm:pkill php-fpm
/usr/local/php/sbin/php-fpm
这样,隐藏nginx与PHP的版本号,增加了网站的安全性!