如何在PHP中使用popen与Node.js / Socket.IO?

时间:2014-02-15 00:10:00

标签: php node.js socket.io popen

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)

感谢。

1 个答案:

答案 0 :(得分:0)

如果您只是想让Node服务器保持活动状态,则可以使用GNU Screen保持节点服务器进程正常运行。 (http://www.gnu.org/software/screen/

您将能够关闭SSH终端并从另一台计算机/位置打开它,并能够重新连接到会话;所有这些都没有让你的服务器停止。