一.配置nginx隱藏版本號
1.隱藏nginx版本號,避免安全漏洞洩露
2.nginx隱藏版本號的方法
·修改配置檔案法
·修改原始碼法
二.修改配置檔案法
1.將nginx配置檔案中server_tokens選項的值為off
#vi nginx.conf
server_tokens off;關閉版本號
#nginx -t
2.重啟服務,訪問**使用crul -l命令檢測
#systemctl restart nginx
#curl -l
三.修改原始碼法
1.nginx原始碼檔案/usr/src/nginx-1.12.0/src/core/nginx.h包含版本資訊,可以隨意設定
2.重新編譯安裝,隱藏版本資訊
3.示例
·#define nginx_version 「1.1.1」,修改版本號為1.1.1
·define nginx_ver 「iis/」,修改軟體型別iis
4.重啟服務,訪問**使用curl -l命令檢測
四.修改nginx使用者與組
1.nginx執行時程序需要有使用者與組的支援,以實現對**檔案讀取時進行訪問控制
2.nginx預設使用nobody使用者賬號與組賬號
3.修改的方法
·編譯安裝時指定使用者與組
·修改配置檔案指定使用者與組
五.編譯安裝時指定
1.建立使用者賬號與組賬號,如nginx
2.編譯安裝時–user與–group指定nginx服務的執行使用者與組賬號
六.修改配置檔案法指定、
1.新建使用者賬號,如nginx
2.修改主配置檔案user選項,指定使用者賬號與組賬號
3.重啟nginx服務,使配置生效
4.使用ps aux命令檢視nginx的程序資訊,驗證執行使用者賬號改變效果
七.配置nginx網頁快取時間
1.當nginx將網頁資料返回給客戶端後,可設定快取的時間,以方便在日後進行相同內容的請求時直接返回,避免重複請求,加快了訪問速度
2.一般針對靜態網頁設定,對動態網頁不設定快取時間
3.設定方法
·修改配置檔案,在http段,或者server段,或者localtion段加入對特定內容的過期引數
4.示例
·修改nginx的配置檔案,在localtion段加入expires引數
八.實現nginx的日誌切割
1.隨著nginx執行時間增加,日誌也會增加。為了方便掌握nginx執行狀態,需要時刻關注nginx日誌檔案
2.太大的日誌檔案對監控是乙個大災難
·定期進行日誌檔案的切割
3.nginx自身不具備日誌分割處理的功能,但可以通過nginx訊號控制功能的指令碼實現日誌的自動切割
4.通過linux的計畫任務周期性地進行日誌切割
5.編寫指令碼進行日誌切割的思路
·設定時間變數
·設定儲存日誌路徑
·將目前的日誌檔案進行重新命名
·重建新日誌檔案
·刪除時間過長的日誌檔案
·設定cron任務,定期執行指令碼自動進行日誌切割
九.配置nginx實現連線超時
1.為避免同一客戶端長時間占用連線,造成資源浪費,可設定相應的連線超時引數,實現控制連線訪問時間
2.超時引數
·keepalive_timeout
①設定連線保持超時時間
·client_header_timeout
①指定等待客戶端傳送請求頭的超時時間
·clinet_body_timeout
①設定請求體讀超時時間
十.更改nginx執行程序數
1.在高併發場景,需要啟動更多的nginx程序以保證快速響應,以處理使用者的請求,避免造成阻塞
2.更改程序數的配置方法
·修改配置檔案,修改程序配置引數
3.修改配置檔案的worker_processes引數
·一般設為cpu的個數或者核數
·在高併發情況下可設定為cpu個數或者核數的2倍
4.增加程序數,可減少了系統的開銷,提公升了服務速度
5.使用ps aux檢視執行程序數的變化情況
6.預設情況,nginx的多個程序可能跑在乙個cpu上,可以分配不同的程序給不同的cpu處理,充分利用硬體多核多cpu
7.在一台4核物理伺服器,進行配置,將程序進行分配
十一.配置nginx實現網頁壓縮功能
1.nginx的ngx_http_gzip_module壓縮模組提供對檔案內容壓縮的功能
2.允許nginx伺服器將輸出內容在傳送客戶端之前進行壓縮,以節約**頻寬,提公升使用者的訪問體驗,預設已經安裝
3.可在配置檔案中加入相應的壓縮功能引數對壓縮效能進行優化
4.壓縮功能引數
·gzip on:開啟gzip壓縮輸出
·gzip_min_length 1k:設定允許壓縮的頁面最小位元組數
·gzip_buffers 4 16k;申請4個單位為16k的記憶體作為壓縮結果流快取,預設值是申請與原始資料大小相同的記憶體空間來儲存gzip壓縮結果
·gzip_http_version 1.0:設定識別http協議版本,預設是1.1,目前大部分瀏覽器已經支援gzip解壓,但處理較慢,也比較消耗伺服器cpu資源
·gzip_comp_level 2:指定gzip壓縮比,1壓縮比最小,處理速度快;9壓縮比最大,傳輸速度快,但處理速度最慢
·gzip_types text/plain:壓縮型別,對哪些網頁文件啟用壓縮功能
·gzip_vary on:讓前端快取伺服器快取經過gzip壓縮的頁面
5.將以上的壓縮功能引數加入到主配置檔案httpd配置中段
6.重啟服務,檢視網頁壓縮功能開啟結果
十二.配置nginx實現防盜煉
1.在企業**服務中,一般都要配置防盜煉功能,以避免**內容被非法盜用,造成經濟損失
2.nginx防盜煉功能也非常強大。預設情況下,只需要進行簡單的配置,即可實現防盜煉處理
3.示例
·使用兩台主機模擬防盜煉
ip位址
網域名稱用途
192.168.0.102
www.bt.com
源主機192.168.0.104
www.test.com
盜鏈主機
4.盜鏈模擬步驟
·兩台主機配置測試頁面
·編寫盜鏈**的測試網頁,盜用源主機目錄工作目錄的乙個logo.jpg檔案
·在windows中訪問www.test.com檢視盜鏈是否成功
5.配置nginx實現防盜煉
6.重啟服務,再次訪問,檢測防盜效果
7.配置說明
·~*.(jpg|gif|swf)$:匹配以.jpg或.gif或.swf結尾的不區分大小寫的檔案
·vaild_referers:設定信任**,即引用相應的**
·**或者網域名稱:referer中包含相關字串的**
·if語句:如果鏈結的**網域名稱不在valid_referers所列出的列表中,invalid_referer為1,則執行後面的操作,即進行重寫或返回403頁面
Nginx優化,壓縮和設定防盜煉
1.優化nginx 1.隱藏版本資訊的作用 1 隱藏版本資訊的作用 防止洩露版本號被黑客入侵 2 修改nginx源程式配置檔案 root centos01 vim usr local nginx conf nginx.conf 34 server tokens off 關閉版本號 2.配置偽裝版本 ...
Nginx優化與防盜煉相關配置
二 修改使用者與組 三 配置快取時間 四 日誌分割 五 連線超時 六 更改程序數 七 配置網頁壓縮 八 防盜煉 九 fpm引數優化 1 為何需要隱藏nginx版本號 在生產環境中,需要隱藏ngnx的版本號,以避免安全漏洞的洩漏 2 檢視nginx版本號的方法 使用fiddler工具在 windows...
Nginx優化 防盜煉 zfm55123
防盜煉演示 1 安裝配置dns網域名稱解析服務 root localhost yum install bind y root localhost vim etc named.conf options allow query root localhost vim etc named.rfc1912.z...