PHP(PHP4) 循环更新数据在 CentOS 上得到"500 Internal Server Error",但在 Windows 上没有 (XAMPP)



我有大约 600 条来自输出查询的记录。然后我制作一个带有循环更新脚本

在装有xampp 1.7.3(PHP5和MySQL5)的Windows上,运行正常且快速。并成功更新。

但是当我上传到我的主机(CentOS 服务器)时,我看到进程更新数据变长,然后我得到 500 内部服务器错误。当进程运行时,刷新表数据库i,每行更新数据的时间很长。所以只有大约20条记录可以更新,然后得到500个内部服务器错误。

有关信息,在我的主机应用程序服务器(PHP4)和数据库服务器(MySQL4)上是不同的服务器。

使用循环数组处理更新数据:

foreach($kode as $id => $kdid) { $page->adodb->StartTrans(); $qw->sqlExecute($sql['update_data'],array($tglmasuk[$id],$no_urutan[$id],$kode[$id]), false); $page->adodb->CompleteTrans(); }

文件 SQL :

$sql['update_data'] = "UPDATE history SET tgl_masuk = '%s', no_urutan = '%s' WHERE id_history = '%s'"

错误日志 :

[2015年3月16日星期一08:47:19] [警告] [客户端 192.168.1.122] 等待从 CGI 脚本/var/www/cgi-bin/php 输出超时,引用者:http://myurlproccessubmit

[2015 年 3 月 16 日星期一 08:47:19] [错误] [客户端 192.168.1.122] 脚本标头过早结束:php,引用:http://myurlproccessubmit

有人可以帮助我解决问题吗?

错误是脚本未在允许的最大执行时间内完成。

您可以尝试在脚本开头使用以下命令增加最大执行时间:

ini_set('max_execution_time',120);

http://php.net/manual/en/info.configuration.php#ini.max-execution-time

max_execution_time也可以在.htaccess文件中设置:

<IfModule mod_php5.c>
php_value max_execution_time 120
</IfModule>

您也可以向托管公司寻求帮助。

最新更新