使用php生成一个进程不起作用

时间:2010-07-19 18:45:15

标签: php exec fork spawn ubuntu-9.04

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

基本上

如果我有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

我正在使用ubuntu 9.04和2.6.18-164.10.1.el5.028stab067.4

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

检查/var/log/kern.log是否有“审核”级错误消息。由于某种原因,执行官可能被禁止。

写入/ home也很可能被禁止。尝试写入/ tmp而不是?