nginx常用配置解析
1、常用公共參數(一般放在http下面,雖然很多參數都支持server和location)
keepalive_timeout 60; #單位為s
keepalive_request 2; #設置與客戶端在上述超時次數才真正斷開連接;
tcp_nodelay off; #用于設置是否允許套接字TCP_NODELAY,默認為on; tcp_nodelay 作用是用于設置數據包盡快發送數據; 和tcp_nodelay相反,如果啟用了 buffer,建議關閉 tcp_nodelay
tcp_nopush on; #用于設置是否允許套接字TCP_NOPUSH,默認為off; tcp_nopush 的作用就是 數據包會累計到一定大小之后才會發送;
send_timeout 10; #用于設置與客戶端建立tcp握手的超時時間
send_file on; #用于設置是否啟用sendfile()函數,常用是設置為on;
client_max_body_size 100m; #用于設置允許接受的客戶端請求內容的最大值,超過這個值將返回http 413
client_body_buffer_size 128k; #用于指定客戶端請求內容(用戶內容)的緩沖大小,如果客戶端請求內容大于設置值,將啟用臨時文件
client_body_temp_path /usr/local/nginx/client_body_temp/ ; #設置client_body_buffer_size臨時文件目錄
client_head_buffer_size 20k ; #用于緩沖客戶端的請求頭(頭體Request Header),如果帶cookie的話,需要特別注意加大點,默認值為1kn
server_names_hash_max_size 512; #用于限制server_name 的hash大小,粗暴理解就是server_name的字節長度r
server_tokens off; #主要用于設置響應頭中nginx版本的顯示,off代表關閉,on開啟,默認配置on,基于安全考慮,一般選擇off;
gzip on;
gzip_buffers 4 8k; #用于設置幾個單位的緩存用于存儲gzip的壓縮結果流,如果未設置,將獲取與需要壓縮的文件大小一樣的內存;
gzip_comp_level 1; #用于設置壓縮比,可設置參數為1-9,1最快,但壓縮比例小,9最慢,但壓縮比例大;
gzip_min_length 1k; #設置超過多大的內容需要進行壓縮,默認是0,一般設置為1K;
下列這些模塊設置的需根據生產場景來設置位置
add_header name value; #用于在響應頭中添加指定的頭和值;可以設置多個,需要分行設置;
add_header name1 value1;
add_header Cache-Control no-store,no-cache; #用于通知瀏覽器不緩存
expires time|epoch|max|off; #用于設置http響應頭中Expires和Cache-Control頭的值
#time: 即設置時間長短,如果設置為-1,則表示為永遠過期;
proxy相關配置:
proxy_hide_header header_name; #用來隱藏后端被代理的服務器響應頭,nginx返回給客戶端的響應頭里將不會出現被隱藏的頭;
proxy_pass_header header_name; #用于指定某些默認被nginx禁止轉發的響應頭可以進行轉發;
proxy_pass ; #用來指定后端代理地址
proxy_set_header name value ; #用于重新定義或添加從客戶端過來的請求頭 ,然后再發給后端被代理服務器
proxy_redirect off; #用于更改后端被代理服務器的響應頭中的location,默認值為off;
proxy_connect_timeout #用于指定跟后端服務器連接的超時時間,發起握手至等候響應的時間 單位s 默認60
proxy_read_timeout #用于指定跟后端服務器建立了TCP連接,至TCP連接狀態為ESTABLIASHED時間 單位s 默認60
proxy_send_timeout #用于指定后端服務器數據回傳時間_就是在規定時間之內后端服務器必須傳完所有的數據 單位s 默認60
proxy_buffer_size 4k; #用于指定一個處理后端響應的header的緩存的大小,可用來nginx做規則匹配處理
proxy_buffers 4 32k; #指定一個處理后端代理服務器返回主體 應答(response的網頁結果)的buffer 的數量和大小
proxy_cookie_path /proxy_path /; #將客戶端的請求頭中的cookie代理至后端
總結:對于響應頭的修改 locatio<server<http ,即當在location中設置了某些響應頭,如果server中有修改,則以server為最終結果,如果http中再次設置,則以http中為準;
總結
以上是生活随笔為你收集整理的nginx常用配置解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ACM公选课第五节贪心4.14-5.4补
- 下一篇: ACM公选第六节下DP基础(当复习了)2