我遇到了阻止我(慢)进程的问题。我使用带有按钮的php页面开始我的后台慢进程:
<form id="trial" method="post" action=""><input name="trial" value="Start!" type="submit">
<?php
set_time_limit(0);
if (isset($_POST['trial'])) {
system("/srv/www/cgi-bin/myscript.sh");
}
?>
在1.5天过程停止后的某个时刻,我修改了php.ini和apache配置文件,在timeout指令中插入了一个非常高的数字,但它似乎不起作用,或者还有其他一些进程正在停止myscript.sh ..你有什么建议吗? 谢谢!
答案 0 :(得分:0)
连续执行脚本会遇到一些问题,所以在系统中每30分钟设置一次Cron。
set_time_limit(30);
system("/srv/www/cgi-bin/myscript.sh");
Cron设置:
30 * * * * php /path/to/your/php/file.php
答案 1 :(得分:0)
我假设您可以根据帖子通过SSH访问服务器。
如果真正的目标是让您的脚本连续运行,为什么不登录?
nohup myscript.sh
只要您的脚本运行,只要您关闭终端后它就会继续运行。
检查日志
要确定脚本失败的原因,您一定要查看/var/log/kern.log
和/var/log/syslog
。查找包含您的脚本或其中任何子项的任何条目。您的脚本可能会被内核杀死(超出限制)或在运行时出错。