nginx超時設定

2021-08-14 20:47:36 字數 2580 閱讀 2256

nginx常用的超時配置說明

client_header_timeout

語法 client_header_timeout time

預設值 60s

上下文 http server

說明 指定等待client傳送乙個請求頭的超時時間(例如:get / http/1.1).僅當在一次read中,沒有收到請求頭,才會算成超時。如果在超時時間內,client沒傳送任何東西,nginx返回http狀態碼408(「request timed out」)

client_body_timeout

語法 client_body_timeout time

預設值 60s

上下文 http server location

說明 該指令設定請求體(request body)的讀超時時間。僅當在一次readstep中,沒有得到請求體,就會設為超時。超時後,nginx返回http狀態碼408(「request timed out」)

keepalive_timeout

語法 keepalive_timeout timeout [ header_timeout ]

預設值 75s

上下文 http server location

說明 第乙個引數指定了與client的keep-alive連線超時時間。伺服器將會在這個時間後關閉連線。可選的第二個引數指定了在響應頭keep-alive: timeout=time中的time值。這個頭能夠讓一些瀏覽器主動關閉連線,這樣伺服器就不必要去關閉連線了。沒有這個引數,nginx不會傳送keep-alive響應頭(儘管並不是由這個頭來決定連線是否「keep-alive」)

兩個引數的值可並不相同

注意不同瀏覽器怎麼處理「keep-alive」頭

msie和opera忽略掉」keep-alive: timeout=」 header.

msie保持連線大約60-65秒,然後傳送tcp rst

opera永久保持長連線

mozilla keeps the connection alive for n plus about 1-10 seconds.

konqueror保持長連線n秒

lingering_timeout

語法 lingering_timeout time

預設值 5s

上下文 http server location

說明 lingering_close生效後,在關閉連線前,會檢測是否有使用者傳送的資料到達伺服器,如果超過lingering_timeout時間後還沒有資料可讀,就直接關閉連線;否則,必須在讀取完連線緩衝區上的資料並丟棄掉後才會關閉連線。

resolver_timeout

語法 resolver_timeout time

預設值 30s

上下文 http server location

說明 該指令設定dns解析超時時間

proxy_connect_timeout

語法 proxy_connect_timeout time

預設值 60s

上下文 http server location

說明 該指令設定與upstream server的連線超時時間,有必要記住,這個超時不能超過75秒。

這個不是等待後端返回頁面的時間,那是由proxy_read_timeout宣告的。如果你的upstream伺服器起來了,但是hanging住了(例如,沒有足夠的執行緒處理請求,所以把你的請求放到請求池裡稍後處理),那麼這個宣告是沒有用的,由於與upstream伺服器的連線已經建立了。

proxy_read_timeout

語法 proxy_read_timeout time

預設值 60s

上下文 http server location

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

proxy_send_timeout

語法 proxy_send_timeout time

預設值 60s

上下文 http server location

說明 這個指定設定了傳送請求給upstream伺服器的超時時間。超時設定不是為了整個傳送期間,而是在兩次write操作期間。如果超時後,upstream沒有收到新的資料,nginx會關閉連線

proxy_upstream_fail_timeout(fail_timeout)

語法 server address [fail_timeout=30s]

預設值 10s

上下文 upstream

說明 upstream模組下 server指令的引數,設定了某乙個upstream後端失敗了指定次數(max_fails)後,該後端不可操作的時間,預設為10秒

例子:

http 

access_log /var/log/wangshibo.log main;

location /

location /static/video

} ##end server

nginx超時設定

client header timeout 語法 client header timeout time 預設值 60s 上下文 http server 說明 指定等待client傳送乙個請求頭的超時時間 例如 get http 1.1 僅當在一次read中,沒有收到請求頭,才會算成超時。如果在超時時...

nginx超時設定

nginx常用的超時配置說明 client header timeout 語法 client header timeout time 預設值 60s 上下文 http server 說明 指定等待client傳送乙個請求頭的超時時間 例如 get http 1.1 僅當在一次read中,沒有收到請求...

nginx 設定超時

server模組下 proxy connect timeout 360000s nginx跟後端伺服器連線超時時間 連線超時 proxy send timeout 360000s 後端伺服器資料回傳時間 傳送超時 proxy read timeout 360000s 連線成功後,後端伺服器響應時間 ...