PHP執行超時30秒報錯

2021-08-04 22:50:41 字數 929 閱讀 5594

(1)修改php的配置檔案 php.ini 檔案(這個檔案預設安裝的話,在/etc/下面)

找到 php.ini 這個檔案,然後在這個檔案中找到:max_execution_time = 30 ;這一行,將數字 30 設定成你想要的值,單位是秒。(也可以直接修改為:max_execution_time=0;//無限制)注意這樣修改完後需要重啟一下伺服器。例如你的是apache,用service httpd restart

(2)使用 ini_set() 函式

對於那些不能夠修改 php.ini 的朋友來說,你可以使用ini_set()這個函式來改變你的最大執行時間限制值,在程式的頂部加入如下**:ini_set('max_execution_time','100');以上設定的為100秒,你也可以設定為0,那麼就是不限制執行的時間。

(3)使用set_time_limit() 函式

在程式的頂部加入:set_time_limit(100);則表示最大執行時間設定為了100秒,當然也可以將引數設定為0,意思同上。set_time_limit 函式特別說明:void set_time_limit ( int $seconds ) 該函式的作用是設定允許指令碼執行的時間,單位為秒。如果超過了此設定,指令碼返回乙個致命的錯誤。預設值為30秒,或者是在php.ini的max_execution_time被定義的值,如果此值存在。當此函式被呼叫時, set_time_limit()會從零開始重新啟動超時計數器。換句話說,如果超時預設是30秒,在指令碼執行了了25秒時呼叫 set_time_limit(20),那麼,指令碼在超時之前可執行總時間為45秒。當php執行於安全模式下時,此功能不能生效。除了關閉安全模式(在 php.ini 中將 safe_mode 設定為 off)或改變 php.ini 中的時間限制,沒有別的辦法。案例:如果沒有開啟安全模式,設定程式執行時間為25秒。例如:

12if(!ini_get('safe_mode'))

xxl job沒有執行任務卻每隔30秒報錯

今天遠端檢查醫院上線的系統執行狀況時,發現xxl job排程系統在沒有執行任務的情況下一直報錯,如下圖 看這發生時間,每30秒一次,特別有規律,一開始以為是有任務在執行,因為引數是json格式的字串,封裝的時候出錯了導致轉換時報錯,但是檢查了一遍所有的任務,都不在執行的時間區間。於是停掉了整個排程任...

PHP編譯,執行make報錯

編譯安裝php 的時候,執行make報錯誤 make ext phar phar.php 錯誤 127 root localhost php 5.4.9 mkdir usr local webserver mysql include mysql root localhost php 5.4.9 ln...

PHP編譯,執行make報錯

編譯安裝php 的時候,執行make報錯誤 make ext phar phar.php 錯誤 127 root localhost php 5.4.9 mkdir usr local webserver mysql include mysql root localhost php 5.4.9 ln...