Node.js - 无法永久运行节点服务器

S S*_*ngh 26 node.js forever

我正在尝试使用forever命令运行节点服务器.我使用以下方式全球安装:

npm install forever -g
Run Code Online (Sandbox Code Playgroud)

永远安装后,我尝试使用以下命令运行我的节点脚本:

node_modules\.bin\forever start app.js
Run Code Online (Sandbox Code Playgroud)

以下是我的控制台:

warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up f
or at least 1000ms
info:    Forever processing file: app.js
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题!

Mik*_* S. 6

除了永远建议您声明的配置警告之外,这里没有问题.如果你在那里看到最后的消息,它会告诉你它已经处理了你的脚本.刚运行forever list,您应该看到您的脚本正在运行.

我在通过yum repository(yum install npm)安装npm 然后永远安装时遇到了同样的事情,而当我通过shell脚本安装node和npm然后永远安装时它不会发生.它必须与程序包安装程序的公式有关,或者可能缺少带有安装程序标志的别名,以便在场景后面设置这些值.

那些并不意味着它不起作用.请参阅下文我使用节点站点中的示例代码创建了一个js文件并手动运行(我刷新防火墙暂时打开应用程序的端口,但您不需要):

[root@app1 ~]# vi example.js
[root@app1 ~]# apf -f
apf(23924): {glob} flushing & zeroing chain policies
apf(23924): {glob} firewall offline
[root@app1 ~]# node example.js 
Server running at http://127.0.0.1:1337/
Run Code Online (Sandbox Code Playgroud)

然后我永远启动应用程序:

^C[root@app1 ~]# forever start example.js 
warn:    --minUptime not set. Defaulting to: 1000ms
warn:    --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms
info:    Forever processing file: example.js
Run Code Online (Sandbox Code Playgroud)

现在我检查我的应用程序是否正在运行:

[root@app1 ~]# forever list
info:    Forever processes running
data:        uid  command       script     forever pid   logfile                 uptime       
data:    [0] dan1 /usr/bin/node example.js 23976   23978 /root/.forever/dan1.log 0:0:0:27.320 
[root@app1 ~]#
Run Code Online (Sandbox Code Playgroud)


小智 -9

如果全局设置模块(-g 选项)“永远”位于 $path 中

forever start app.js
Run Code Online (Sandbox Code Playgroud)

应该管用。

  • 命令“forever start app.js”抛出我发布的消息! (2认同)