「海納百川,有容乃大;壁立千仞,無欲則剛node
目錄nginx
正文web
web優化一覽總結表
優化類型緩存 |
優化說明安全 |
優化方法性能優化 |
安全優化cookie |
修改nginx配置文件實現優化架構 server_tokens off;併發 |
|
修改nginx源碼配置文件tcp 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 |
||
修改nginx默認用戶,利用配置文件參數實現 修改nginx默認用戶,採用編譯參數方式實現 |
||
性能優化 |
woker_processes 8 通常和CPU的核數設置一致;高併發能夠和CPU核數2倍 |
|
利用worker_cpu_affinity進行優化 4顆CPU優化配置參數爲0001 0010 0100 1000 2顆CPU優化配置參數爲0101 1010 |
||
利用use epoll參數修改事件模型爲epoll模型 事件模型指定配置參數放置在event區塊中 |
||
利用worker_connections鏈接參數進行調整 用戶最大併發鏈接數=worker進程數*worker鏈接數 |
||
利用worker_rlimit_nofile參數進行調整(65535) |
||
利用sendfile on開啓高效傳輸模式 tcp_nopush on表示將數據積攢到必定的量再進行傳輸 tcp_nodelay on表示將數據信息進行快速傳輸 |
||
keepalive_timeout優化客戶端訪問nginx服務端超時時間 client_header_timeout優化服務端讀請求頭超時時間 client_body_timeout優化兩個請求主體發送間隔超時時間 send_timeout優化兩個響應信息的間隔超時時間 |
||
安全優化 |
client_max_body_size設置客戶端請求報文主體最大尺寸 |
|
性能優化 |
優化利用FastCGI與PHP鏈接緩衝信息 優化利用FastCGI與PHP鏈接緩存信息 |
|
利用gzip命令進行對數據信息壓縮優化 從而節省網站帶寬資源 |
||
利用location匹配相應要緩存的信息,利用expires參數結合時間信息進行緩存。 |
||
日誌優化 |
進行日誌文件輪詢切割 部分日誌內容不進行記錄,節省系統磁盤空間 對日誌文件進行受權 |
|
在動態解析配置前面,設置限制特定目錄下擴展名文件解析 限制指定目錄uri信息訪問,利用禁止策略和返回錯誤狀態碼 限制用戶訪問,利用白名單和黑名單方式 禁止非法域名解析訪問企業網站 |
||
安全優化 |
根據HTTP referer實現防盜鏈 根據cookie防盜鏈 經過加密變換訪問路徑實現防盜鏈 在產品設計上解決盜鏈方案 |
|
感知優化 |
對錯誤代碼實行本地頁面跳轉 優雅顯示錯誤頁面放到本地單獨目錄下,進行優雅顯示 改變狀態碼爲新的狀態碼,並顯示指定的文件內容 錯誤狀態碼URL重定向 將錯誤狀態碼重定向到一個location |
|
安全優化 |
只將用戶上傳數據的目錄設置爲755,用戶和組使用nginx 其他目錄和文件爲755/644,用戶和組使用root |
|
利用robots.txt機器人協議防止爬蟲(君子協議) 利用$http_user_agent變量阻止爬蟲代理訪問(2種方法) 利用程序開發驗證碼信息,阻止進行爬蟲 |
||
利用$request_method限制請求方法 |
||
全面優化 |
|
|
利用程序或反向代理實現架構訪問分離解耦優化 |
||
安全優化 |
利用nginx –c參數啓動nginx多實例,使master進程讓普通用戶管理 |
|
利用limit_conn_zone參數和$binary_remote_addr變量限制nginx單IP地址併發鏈接數 利用limit_conn_zone參數和$server_name r變量限制nginx虛擬主機總鏈接數 |
||
|