2014-01-15 84 views
0

在我開發的軟件中,用戶可以發送一個PHP用來向數據庫插入行的XLS文件。通常一個文件有1500行,並在數據庫中產生7000行。該過程通常需要5到7分鐘才能完成。自定義504頁面不能正常工作

過了一段時間,我得到一個504網關超時錯誤。我做了一項研究,發現解決方案是增加最大執行時間。我試過了,沒有任何結果,就像配置被忽略了一樣。

max_execution_time = 600 
max_input_time = 600 

然後我試圖直接在PHP設置此,使用功能ignore_user_abortset_time_limit。再次,它沒有工作。

set_time_limit(0);   //never time out 
ignore_user_abort(true); //ignore abort 

之後,我放棄了,並決定做一個自定義的錯誤頁面,解釋爲什麼發生錯誤,然後重新導向到控制面板。於是,我去我的.htaccess具有以下內容:

# Turn on the RewriteEngine 
RewriteEngine On 
Options +FollowSymLinks +Includes 
Options -Indexes 
IndexIgnore */* 
# Rules 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteCond $1 !^(index\.php|images|robots\.txt) 

RewriteRule . index.php?/$0 [L] 

,並添加以下語句:

ErrorDocument 504 http://domain/erros/timeout/ 

當錯誤再次出現,而不是重定向到URL,它顯示了默認錯誤頁面。

UPDATE

我使用的Dreamhost共享主機。

回答

相關問題