簡體   English   中英

Linux服務器上的內部服務器錯誤(500)和PHP max_execution_time

[英]Internal Server Error (500) and PHP max_execution_time on Linux server

我有一個PHP腳本,需要處理1到5個小時(將新聞通訊發送給我們的客戶)。 我都嘗試了set_time_limit(2000); ini_set('max_execution_time', 360000); 但都行不通。 它們可以在XAMPP本地服務器上完美運行,但是不能在我們的專用服務器(Unix和Apache)上運行。 我也將Apache超時更改為300(原來是50),但是在腳本運行30秒后,它返回以下內容:

內部服務器錯誤頁面(錯誤500)

我不知道是否還有其他超時時間和/或為什么服務器不支持ini_set()set_time_limit()函數。 我們正在使用Unix CentOS 6和Plesk 11.9作為服務器。 我還更改了默認的php.ini max_execution_time ,它可以工作...

我閱讀了許多文章和論壇,但我不知道為什么會這樣。 我感謝您的幫助。

//在您的php文件標題或配置中添加

ini_set('max_execution_time','256'); //max_execution_time','0' <- unlimited time
ini_set('memory_limit','512M');

干得好!

更好的方法是在將新聞稿發送給客戶的腳本頂部使用ini_set()set_time_limit() ...您不應該嘗試維護主要的配置文件...而且正如上面的建議,cron作業是非常適合這種情況。

感謝您的回答和評論。 我設置了cron作業,並且效果很好。 我還嘗試了“大塊”(每個大塊150封電子郵件)的方法,這種方法也可行。

如果您使用Vps:編輯您的php.ini文件:

max_execution_time = 256
memory_limit = 512M

然后,運行命令行以重新啟動apache

service httpd restart

或頭文件

ini_set('max_execution_time','256');
ini_set('memory_limit','512M');

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM