【问题标题】:PHP background job to ubuntu lampp server , Interrupted by server after 60-70 mintuesPHP后台作业到ubuntu xampp服务器,60-70分钟后被服务器中断
【发布时间】:2015-10-18 23:15:06
【问题描述】:

我正在使用 PHP exec 命令在网络服务器上执行作业。 最初它开始执行作业,但在作业完成之前被中断。虽然相同的作业通过 SSH 命令运行良好。(用户没有 sudo 权限) 以下是我的代码:

 ob_start();
 $pid=system("sh fold.sh $argument1 >/dev/null & echo $!");
 ob_end_clean();

我也尝试了几种方法来检查错误,但都没有成功。

我使用 test.txt 和 2>&1 或 2>error.txt 而不是 /dev/null 但不工作 命令(php 中的 exec)仅在我使用 /dev/null 时才有效。所以我不知道错误在哪里。为什么中间会中断。

任何想法可能是什么问题?

SSH 提示符下的正常工作时间(用户:abc):14-20 小时 通过php(用户:守护进程)的中断时间:1-2小时

【问题讨论】:

  • 为什么它在启动时开始执行作业,并且在 60-70 分钟后突然中断。甚至相同的脚本也在 ssh 上运行(不使用 sudo 用户)。

标签: php linux ssh xampp ubuntu-12.04


【解决方案1】:

为 www-data 用户添加 sudo 权限

www-data ALL=(ALL) NOPASSWD: fold.sh

【讨论】:

  • 有必要吗?现在我没有 sudo 权力。如果是,那我得问问我的服务器管理员。
  • 是的,Apache 的用户 www-data 需要被授予权限才能使用 sudo 执行某些应用程序。 stackoverflow.com/questions/3166123/…unix.stackexchange.com/questions/115054/…
  • 为什么它在启动时开始执行作业,并且在 60-70 分钟后突然中断。甚至相同的脚本也在 ssh 上运行(不使用 sudo 用户)。
猜你喜欢
  • 2020-05-06
  • 1970-01-01
  • 1970-01-01
  • 2016-05-26
  • 2015-04-06
  • 2019-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多