0

我尝试使用 php 启动后台进程,为此,我在 exec 函数的底部添加了一个 &,但几天后它停止工作。

基本上

如果我有文件 1.php:

<?php var_dump(exec('/home/2.php > /home/2.output 2>&1 &'));

和文件 2.php :

<?php sleep(5); echo "Fill\n";

运行文件 1.php,它返回一个空字符串而不是 -1 或其他东西,但使用控制台并调用 1.php 它工作正常:

php-cgi -eq -f /home/1.php

我正在使用带有 2.6.18-164.10.1.el5.028stab067.4 的 ubuntu 9.04

4

2 回答 2

1

好吧,经过一场噩梦试图解决这个问题,最后我将 ubuntu 从 9 更新到 10,这解决了问题,我认为一些 linux 的更新会破坏 php,如果它再次发生在我身上,我可能会开始重新启动 vps。

于 2010-07-20T20:36:05.387 回答
0

检查/var/log/kern.log“审计”级别的错误消息。由于某种原因,该 exec 可能被禁止。

也很有可能禁止写入 /home。尝试写入 /tmp 吗?

于 2010-07-19T22:56:27.540 回答