nginx隱藏版本號

Nginx的版本號主要在兩個地方會有:
  第一個是HTTP header,有個Server:nginx/1.x.x類似會暴露Web服務器所用軟件名稱以及版本號,這個也是大多數Web服務器最容易暴露版本號的地方,如下:

[root@bkjz ~]# curl -I www.nginx.org  HTTP/1.1 200 OK
  Server: nginx/0.8.44  Date: Tue, 13 Jul 2010 14:05:11 GMT
  Content-Type: text/html
  Content-Length: 8284  Last-Modified: Tue, 13 Jul 2010 12:00:13 GMT
  Connection: keep-alive
  Keep-Alive: timeout=15  Accept-Ranges: bytes

  第二個地方是Nginx出錯頁面,比如404頁面沒有找到等,這是如果用戶沒有指定頁面的話,那麼Nginx自己的頁面會有版本戳記。

  不過幸運的是對於這兩個地方的版本號隱藏,Nginx都提供了簡單的辦法一步到位,參考server_tokens。通過在配置文件的http節配置server_tokens off來達到我們目的。

1、打開Nginx主配置文件:nginx.conf,取消註釋或添加配置語句。

http { # ...省略一些配置

  server_tokens off;   #默認是註釋掉的

  # ...省略一些配置}

2、編輯php-fpm配置文件,如fastcgi.conf或fcgi.conf(這個配置文件名也可以自定義的,根據具體文件名修改):

找到:

fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

改爲:

fastcgi_param SERVER_SOFTWARE nginx;

3、重新加載nginx配置

/etc/init.d/nginx reload 

或者

servic nginx reload

reload可以不斷業務重載配置,也可以考慮直接重啓。

這樣就完全對外隱藏了nginx版本號了,就是出現404、501等頁面也不會顯示nginx版本

轉自:http://www.ttlsa.com/nginx/hidden-nginx-version/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章