1. 程式人生 > >Nginx超時配置

Nginx超時配置

pro 足夠 一個 上下文 服務器 bsp cat response reading

Nginx超時配置

1.client_header_timeout

語法client_header_timeout time

默認值60s

上下文http server

說明 指定等待client發送一個請求頭的超時時間(例如:GET/HTTP/1.1).僅當在一次read中,沒有收到請求頭,才會算超時。如果在超時時間內,client沒發送任何東西,nginx返回HTTP狀態碼408(“Request timed out”)

2.client_body_timeout

語法 client_body_timeout time

默認值 60s

上下文 http server location

說明 該指令設置請求體

(request body)的讀超時時間。僅當在一次readstep中,沒有得到請求體,就會設為超時。超時後,nginx返回HTTP狀態碼408(“Request timed out”)

3.keepalive_timeout

語法 keepalive_timeout timeout [header_timeout]

默認值75s

上下文 http server location

說明 第一個參數指定了與clientkeep-alive連接超時時間。服務器將會在這個時間後關閉連接。可選的第二個參數指定了在響應頭Keep-Alivetimeout=time中的time值。這個頭能夠讓一些瀏覽器主動關閉連接,這樣服務器不必要去關閉連接了。沒有這個參數,

nginx不會發送Keep-Alive響應頭(盡管並不是這個頭來決定連接是否”keep-alive”)

兩個參數的值可並不相同

2 註意不同瀏覽器怎麽處理”keep-alive”

2 MSIEOpera忽略掉”Keep-Alive:timeout=<N>”header

2 MSIE保持連接大約60-65秒,然後發送TCP RST

2 Opera永久保持長連接

2 Mozilla keeps the connection alive for N plus about 1-10 seconds

2 Konqueror保持長連接N

4.lingering_timeout

語法 lingering_timeout time

默認值 5s

上下文 http server location

說明 lingering_close生效後,在關閉連接前,會檢測是否有用戶發送的數據到達服務器,如果超過lingering_timeout時間後還沒有數據可讀,就直接關閉連接;否則,必須在讀取完連接緩沖區上的數據並丟棄掉後才會關閉連接。

5.resolver_timeout

語法 resolver_timeout time

默認值 30s

上下文 http server location

說明 該指令設置DNS解析超時時間

6. proxy_connect_timeout

語法 proxy_connect_timeout time

默認值 60s

上下文 http server location

說明 該指令設置與upstream server的連接超時時間,有必要記住,這個超時不能超過75秒。這個不是等待後端返回頁面的時間,那是由proxy_read_timeout聲明的。如果你的upstream服務器起來了,但是hanging住了(例如,沒有足夠的線程處理請求,所以把你的請求放到請求池裏稍後處理),那麽這個聲明是沒有用的,由於與upstream服務器的連接已經建立了。

7. proxy_read_timeout

語法 proxy_read_timeout time

默認值 60s

上下文 http server location

說明 該指令設置與代理服務器的讀超時時間。它決定了nginx會等待多長時間來獲得請求的響應。這個時間不是獲得整個response的時間,而是兩次reading操作的時間。

8. proxy_send_timeout

語法 proxy_send_timeout time

默認 60s

上下文 http server location

說明 這個指定設置了發送請求給upstream服務器的超時時間。超時設置不是為了整個發送期間,而是在兩個write操作期間。如果超時後,upstream沒有收到新的數據,nginx會關閉連接。

9. proxy_upstream_fail_timeout (fail_timeout)

語法 server address [fail_timeout=30s]

默認 10s

上下文 upstream

說明 upstream模塊下server指令的參數,設置了某一個upstream後端失敗了指定次數(max_fails)後,該後端不可操作的時間,默認為10秒。

10. send_timeout

語法 send_timeout time

默認 60s

上下文 http,server,location

說明 指令定義響應給客戶端的超時時間。超時設置不是為了整個發送期間,而是在兩個操作之間,如果在這段時間之後客戶什麽都不做,那麽nginx將關閉連接。

11. fastcgi_connect_timeout

fastcgi_connect_timeout time

默認 60s

上下文 http,server,location

說明 定義與FastCGI服務器建立連接的超時。應該註意的是,這個超時通常不能超過75秒。

12. fastcgi_send_timeout

語法 fastcgi_send_timeout time

默認 60s

上下文 http, server, location

說明 設置向FastCGI服務器發送請求的超時時間。超時只設置在兩個連續的寫操作之間,而不是整個請求的傳輸。如果FastCGI服務器在這個時間內沒有收到任何東西,那麽連接將被關閉。

13. fastcgi_read_timeout

語法 fastcgi_read_timeout time

默認 60s

上下文 http, server, location

說明 定義了從FastCGI服務器讀取響應的超時時間。超時只設置在兩個連續讀取操作之間,而不是整個響應的傳輸。如果FastCGI服務器在這段時間內不傳輸任何內容,那麽連接將被關閉。

Nginx超時配置