nginx優化

nginx優化一覽總結表

優化類型

優化說明

優化方法

安全優化

01.     隱藏nginx版本信息優化

修改nginx配置文件實現優化

server_tokens off

02.     修改nginx軟件名優化

修改nginx源碼配置文件

nginx-1.6.3/src/core/nginx.h

ngx_http_header_filter_module.c

nginx-1.6.3/src/http/ngx_http_special_response.c

性能優化

04.     修改nginx軟件work_processes進程數量

woker_processes 8

一般和CPU的核數設置一致;高併發可以和CPU核數2倍

05.     優化nginx服務進程均勻分配到不同CPU進行處理

利用worker_cpu_affinity進行優化

4顆CPU優化配置參數爲0001 0010 0100 1000

2顆CPU優化配置參數爲0101 1010

06.     優化nginx事件處理模型

利用use epoll參數修改事件模型爲epoll模型

事件模型指定配置參數放置在event區塊中

07.     優化nginx單進程客戶端連接數

利用worker_connections連接參數進行調整

用戶最大併發連接數=worker進程數*worker連接數

08.     優化nginx服務進程打開文件數

利用worker_rlimit_nofile參數進行調整(65535)

09.     優化nginx服務數據高效傳輸模式

利用sendfile on開啓高效傳輸模式

tcp_nopush on表示將數據積攢到一定的量再進行傳輸

tcp_nodelay on表示將數據信息進行快速傳輸

10.     優化nginx服務超時信息

keepalive_timeout優化客戶端訪問nginx服務端超時時間

client_header_timeout優化服務端讀請求頭超時時間

client_body_timeout優化兩個請求主體發送間隔超時時間

send_timeout優化兩個響應信息的間隔超時時間

安全優化

11.     優化nginx服務上傳文件限制

client_max_body_size設置客戶端請求報文主體最大尺寸

性能優化

12.     優化nginx服務與FastCGI連接緩存與緩衝信息

優化利用FastCGI與PHP連接緩衝信息

優化利用FastCGI與PHP連接緩存信息

13.     配置Nginx gzip壓縮實現性能優化

利用gzip命令進行對數據信息壓縮優化

從而節省網站帶寬資源

14.     配置Nginx expires實現讓客戶端緩存數據

利用location匹配相應要緩存的信息,利用expires參數結合時間信息進行緩存。

日誌優化

15.     配置Nginx服務相關日誌操作

進行日誌文件輪詢切割(系統自帶的logrotate切割nginx日誌)

 

 

安全優化

16.     Nginx站點目錄及文件URL訪問控制

在動態解析配置前面,設置限制特定目錄下擴展名文件解析

限制指定目錄uri信息訪問,利用禁止策略和返回錯誤狀態碼

限制用戶訪問,利用白名單和黑名單方式

禁止非法域名解析訪問企業網站

17.     Nginx圖片及目錄防盜鏈解決方案

根據HTTP referer實現防盜鏈

根據cookie防盜鏈

通過加密變換訪問路徑實現防盜鏈

在產品設計上解決盜鏈方案

感知優化

18.     Nginx錯誤頁面的優雅顯示

對錯誤代碼實行本地頁面跳轉

優雅顯示錯誤頁面放到本地單獨目錄下,進行優雅顯示

改變狀態碼爲新的狀態碼,並顯示指定的文件內容

錯誤狀態碼URL重定向

將錯誤狀態碼重定向到一個location

安全優化


19.Nginx站點目錄文件及目錄權限優化

只將用戶上傳數據的目錄設置爲755,用戶和組使用nginx

其餘目錄和文件爲755/644,用戶和組使用root

20.Nginx防爬蟲優化

利用robots.txt機器人協議防止爬蟲(君子協議)

利用$http_user_agent變量阻止爬蟲代理訪問(2種方法)

利用程序開發驗證碼信息,阻止進行爬蟲

21.     利用Nginx限制請求訪問

利用$request_method限制請求方法

安全優化

22.     使用普通用戶啓動Nginx

利用nginx –c參數啓動nginx多實例,使master進程讓普通用戶管理


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