Apache超時配置


Apache超時配置

1. KeepAliveTimeout

語法 KeepAliveTimeout seconds

默認 5

上下文 server config, virtual host

說明 服務器在持久連接上等待后續請求的時間量。Apache將在關閉連接之前等待后續請求的秒數。一旦接收到請求,超時指令指定的超時值將被應用。將KeepAliveTimeout設置為高值可能會在負載很大的服務器上造成性能問題。超時越高,就會有越多的服務器進程被占用,等待與空閑客戶機的連接。在基於名稱的虛擬主機上下文中,將使用一組NameVirtualHost中的第一個定義的虛擬主機(默認主機)的值。其他值將被忽略。

2. ProxyTimeout

語法 ProxyTimeout seconds

默認 Value of Timeout

上下文 server config, virtual host

說明 代理請求的網絡超時。該指令允許用戶在代理請求上指定超時。當您有一個掛起的慢/bugappserver時,這是非常有用的,您寧願返回一個超時並優雅地失敗,而不是等待服務器返回的時間。

3. RequestReadTimeout

語法 RequestReadTimeout [header=timeout[[-maxtimeout],MinRate=rate] [body=timeout[[-maxtimeout],MinRate=rate]

默認 Unset; no limit

上下文 server config, virtual host

說明 設置從客戶端接收請求頭和主體的超時值。這個指令可以設置不同的超時來接收請求頭和來自客戶端的請求體。如果客戶端未能在配置的時間內發送消息頭或主體,則會發送408次請求超時錯誤。對於SSL虛擬主機,頭超時值包括執行初始SSL握手所需的時間。如果用戶的瀏覽器被配置為查詢證書撤銷列表,而CRL服務器是不可訪問的,那么初始SSL握手可能會花很長時間,直到瀏覽器放棄等待CRL。因此,不應該將頭超時值設置為SSL虛擬主機的非常低的值。主體超時值包括SSL重新協商所需的時間(如有必要)。在使用AcceptFilter時(通常是LinuxFreeBSD),在接收到至少一個字節(或者是整個請求)之前,套接字不會被發送到服務器進程。使用RequestReadTimeout配置的頭超時只有在服務器進程接收到套接字之后才有效。如:RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500

Fixed timeout value:

type=timeout

每秒鍾允許讀取所有請求頭或主體的時間。0的值表示沒有限制。

Timeout value that is increased when data is received:

type=timeout,MinRate=data_rate

與上面一樣,但是每當接收到數據時,就會根據指定的最小數據速率(以每秒字節數)增加超時值。

Timeout value that is increased when data is received, with an upper bound:

type=timeout-maxtimeout,MinRate=data_rate

與上面一樣,但是超時將不會超過指定的超時范圍的第二個值。

4. TimeOut

語法 TimeOut seconds

默認  300

上下文 server config, virtual host

說明 服務器在請求失敗之前等待某些事件的時間。超時指令定義了Apache在各種情況下等待輸入輸出的時間長度。

在讀取客戶端的數據時,如果讀取緩沖區為空,則等待TCP包到達的時間長度。

當向客戶端寫入數據時,如果發送緩沖區滿了,等待確認包的時間長度。

mod_cgi中,等待從CGI腳本輸出的時間長度。

mod_ext_filter中,從過濾過程等待輸出的時間長度。

mod_proxy中,如果沒有配置ProxyTimeout,則默認的超時值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM