【发布时间】:2014-02-15 00:10:00
【问题描述】:
从this Stack Overflow question,我意识到您可以使用popen 让进程作为后台进程在后台运行。
但是当我尝试这个时:
$daemon = popen('node nodeServer.js', 'r');
echo "Server started.\n";
它会坏掉,并给我很多与 Node.js 相关的错误。
这是为什么?当我在命令提示符下尝试node nodeServer.js 时,它工作正常。
这是我得到的错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: write EPIPE
at errnoException (net.js:901:11)
at Object.afterWrite (net.js:718:19)
谢谢。
【问题讨论】:
-
如果您告诉我们这些错误是什么,将会很有帮助。节点是否在 PHP 打开的任何 shell 的路径中? PHP 是否有权运行该可执行文件?它是否有权读取该 .js 文件?您基本上没有提供任何有用的细节,在您提供之前,除了模糊的猜测,我们无能为力。
-
@MarcB 我更新了我的问题,请看一下。
标签: php node.js socket.io popen