2012-03-09 26 views
28

如何在.htaccess中增加apache超時指令?我有一個LONG $ _POST ['腳本'],用戶可能需要10分鐘來填寫所有數據。問題是如果它比頁面超時或其他東西花費太長時間,並且它轉到網頁未找到錯誤頁面。在.htaccess中增加apache超時指令是我正在尋找的答案。我想它默認設置爲300秒,但我不知道如何增加該值,或者即使這是我應該做的......無論哪種方式,我如何增加默認時間?謝謝。如何在.htaccess中增加apache超時指令?

回答

48

如果你有長處理服務器端代碼,我不認爲它落入404如你所說(「它去網頁沒有發現錯誤頁面」)

瀏覽器應報告請求超時錯誤。

你可以做兩件事情:

基於CGI /服務器端引擎增加超時有

PHP:http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time - 默認爲30秒

在php.ini:

max_execution_time 60 

增加apache超時

http://httpd.apache.org/docs/2.0/mod/core.html#timeout - 默認爲300

在你的httpd.conf(在服務器配置或虛擬主機配置)

TimeOut 600 

注意,第一次設置允許你的PHP腳本運行的時間更長,也不會干擾網絡超時。

第二設定修改服務器會等待某些事件未能

對不起請求前的最長時間,我不知道,如果你使用的是PHP作爲服務器端處理,但如果你提供更多的信息,我會更準確。

+0

這是PHP。我已將'max_execution_time = 10080'應用於php.ini。到目前爲止,我在3臺瀏覽器上成功排除了5次故障。如果單擊提交併避免網頁未找到錯誤,這是否僅允許用戶在帖子表單頁面上閒置3小時(10080秒= 3小時)?就像我說過的我一直很好,但仍然不覺得100%。此外,超時300更改爲超時10080行嗎?那會超過允許的最大時間,甚至有必要避免我遇到的問題。謝謝你的偉大答案! – Graham 2012-03-09 09:32:38

+1

正如我所說的,您的apache httpd.conf會影響與網絡相關的超時,並且php.ini設置會設置腳本允許運行的最長時間。 – rkosegi 2012-03-09 09:45:03

+0

我們在httpd.conf中放置了TimeOut 600嗎?該行並不存在於我的。它是在'DirectoryIndex'塊還是'Directory'塊或其他地方? – covfefe 2015-11-09 21:31:00

0

以防萬一,這可以幫助其他人(如:一個80端口,一個端口443)

如果你將要加入TimeOut指令,以及您的網站使用多個虛擬主機,則不要不要忘了添加指令全部其中!