通常來說,默認的PHP
程序最大運行時間是30s
,如果你的程序運行超過這個時間限制,那么會有類似Maximum execution time of 30 seconds exceeded
的報錯。
有幾種解決辦法:
首先先檢查是不是你的在做一些傻事,從而消耗了大量的CPU資源及時間,如果確實需要程序長時間運行才能得出結果,那么可以
1> 在php.ini
中增加運行時間:
max_execution_time=300
2> 在PHP
文件中添加如下代碼
ini_set('max_execution_time', 300); //300 seconds = 5 minutes
3> 使用.htaccess
文件來增加運行時間:
<IfModule mod_php5.c> php_value max_execution_time 300 </IfModule>
其他一些常見配置參考:
<IfModule mod_php5.c> php_value post_max_size 5M php_value upload_max_filesize 5M php_value memory_limit 128M php_value max_execution_time 300 php_value max_input_time 300 php_value session.gc_maxlifetime 1200 </IfModule>
如果你的環境是wordpress
,那么請在config.php
中,添加:
define('WP_MEMORY_LIMIT', '128M');
如果你使用了其他一些框架,可以修改
ini_set('memory_limit', '128M');
默認情況下,
php.ini 中配置的最大執行時間是 30 秒,這是由 php.ini 中的 max_execution_time 變量指定的。如果我們有一個需要花費很多時間的工作,比如要發送大量郵件,或者要進行龐大的數據統計分析工作。即使任務沒有執行完畢,服務器也會在 30 秒后強行中止正在執行的程序。
1,修改最長執行時間的兩種方法
(1)直接修改
php.ini 中 max_execution_time 的數值。
(2)如果沒權限修改
php.ini 文件,或者我們想對某些頁面進行單獨設置。那么也可以在 PHP 程序頁面中進行設置,代碼如下(數值 0 表示沒有執行時間的限制)。
1
|
ini_set
(
'max_execution_time'
,
'0'
);
|
如果是在 IIS 服務下運行 PHP 程序,會發現根據前面的方法修改后,執行長時間的操作還是會報錯。錯誤信息如下:
HTTP 錯誤 500.0 - Internal Server Error
C:\websoft\php\php-cgi.exe - FastCGI 進程超過了配置的請求超時時
C:\websoft\php\php-cgi.exe - FastCGI 進程超過了配置的請求超時時
原文出自:www.hangge.com 轉載請保留原文鏈接:http://www.hangge.com/blog/cache/detail_1369.html