今天小編給大家分享一下Nginx服務(wù)優(yōu)化的方法的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
創(chuàng)新互聯(lián)建站于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元洪江做網(wǎng)站,已為上家服務(wù),為洪江各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108
在生產(chǎn)環(huán)境中需要隱藏Nginx的版本號(hào),以避免泄露Nginx的版本,使×××者不能針對(duì)特定版本進(jìn)行×××。查看Nginx的版本在CentOS中使用命令curl -I http://172.16.10.10/即可。
[[email protected] ~]# curl -I http://172.16.10.10/ HTTP/1.1 200 OK Server: nginx/1.12.0 #Nginx版本信息 Date: Fri, 29 Jun 2018 08:52:27 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes
隱藏版本號(hào)有兩種方式,一種是修改Nginx的源碼文件,指定不顯示版本號(hào),第二種是修改Nginx的主配置文件。
將Nginx的配置文件中的server_tokens選項(xiàng)值設(shè)置為off,如沒有該配置項(xiàng),加上即可。
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf ........... #省略內(nèi)容 http { include mime.types; default_type application/octet-stream; server_tokens off; #關(guān)閉版本號(hào) ............ #省略內(nèi)容
[[email protected] ~]# nginx -t #測(cè)試配置文件 nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
再次訪問網(wǎng)址,只顯示Nginx,版本號(hào)已經(jīng)隱藏。
[[email protected] ~]# service nginx restart #重新啟動(dòng)nginx服務(wù) [[email protected] ~]# curl -I http://172.16.10.10/ HTTP/1.1 200 OK Server: nginx #nginx隱藏了版本號(hào) Date: Fri, 29 Jun 2018 09:09:36 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes
Nginx的源碼文件包含了版本信息,可以隨意設(shè)置,然后重新編譯安裝,就會(huì)隱藏版本信息。
[[email protected] ~]# vim /opt/nginx-1.12.0/src/core/nginx.h #編輯源碼文件 #define NGINX_VERSION "1.1.1" #修改版本號(hào) #define NGINX_VER "IIS" NGINX_VERSION #修改服務(wù)器類型
重新編譯安裝
[[email protected] ~]# cd /opt/nginx-1.12.0/ [[email protected] nginx-1.12.0]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install
再次訪問網(wǎng)址,只顯示修改之后的版本信息。
[[email protected] nginx-1.12.0]# service nginx restart #重啟nginx服務(wù) [[email protected] nginx-1.12.0]# curl -I http://172.16.10.10/HTTP/1.1 200 OK Server: IIS1.1.1 #nginx的版本信息 Date: Fri, 29 Jun 2018 09:30:09 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes
Nginx運(yùn)行時(shí)進(jìn)程需要有用戶與組的支持,用以實(shí)現(xiàn)對(duì)網(wǎng)站文件讀取時(shí)進(jìn)行訪問控制。主進(jìn)程由root創(chuàng)建,子進(jìn)程由指定的用戶與組創(chuàng)建。Nginx默認(rèn)使用nobody用戶賬號(hào)與組賬號(hào),一般要修改。
[[email protected] ~]# cd /opt/nginx-1.12.0/ [[email protected] nginx-1.12.0]#./configure --prefix=/usr/local/nginx --user=nginx #指定用戶名是nginx --group=nginx #指定組名是nginx --with- && make && make install
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf user nginx nginx; #修改用戶為nginx,組為nginx
重啟nginx查看進(jìn)程運(yùn)行情況,主進(jìn)程由root賬戶創(chuàng)建,子進(jìn)程由nginx創(chuàng)建。
[[email protected] ~]# ps aux | grep nginx root 14923 0.0 0.0 20540 624 ? Ss 17:30 0:00 nginx: master process /usr/local/nginx/sbin/nginx #主進(jìn)程由root創(chuàng)建 nginx 14925 0.0 0.1 22984 1412 ? S 17:30 0:00 nginx: worker process #子進(jìn)程由nginx創(chuàng)建 root 19344 0.0 0.0 112720 984 pts/0 R+ 17:47 0:00 grep --color=auto nginx
當(dāng)Nginx將網(wǎng)頁(yè)數(shù)據(jù)返回給客戶端后,可設(shè)置緩存時(shí)間,方便日后進(jìn)行相同內(nèi)容請(qǐng)求是直接返回,避免重復(fù)請(qǐng)求,加快訪問速度,一般只針對(duì)靜態(tài)資源進(jìn)行設(shè)置,對(duì)動(dòng)態(tài)網(wǎng)頁(yè)不用設(shè)置緩存時(shí)間。 操作步驟如下所示:
[[email protected] ~]# cd /usr/local/nginx/html/ #Nginx的網(wǎng)站目錄 [[email protected] html]# ls 50x.html error.png game.jpg index.html test.html
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf location ~\.(gif|jpg|jepg|png|bmp|ico)$ { #加入新的location root html; expires 1d; #指定緩存時(shí)間 }
[email protected] ~]# service nginx restart
[
以上就是“Nginx服務(wù)優(yōu)化的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。