javascript - 使用 `node` 启动 Node 应用程序可以工作,但使用 `/usr/bin/node` 启动它时则不行

标签 javascript node.js service

我正在尝试将 Node 应用程序设置为服务并启动该服务,我需要使用绝对路径启动 Node ,这意味着我必须使用usr/bin启动它/node,但是无论出于何种原因,我的应用程序在使用此绝对路径时都无法正常工作。

有效

root@server:/etc/systemd/system# node /var/www/gwart./mediawiki/extensions/VisualEditor/parsoid/bin/server.js
{"name":"parsoid","hostname":"server.live-servers.net","pid":25057,"level":30,"levelPath":"info/service-runner","msg":"master(25057) initializing 2 workers","time":"2018-12-15T21:47:27.192Z","v":0}
{"name":"lib/index.js","hostname":"server.live-servers.net","pid":25068,"level":30,"levelPath":"info","msg":"loading ...","time":"2018-12-15T21:47:28.749Z","v":0}
{"name":"lib/index.js","hostname":"server.live-servers.net","pid":25068,"level":30,"levelPath":"info","msg":"ready on :8000","time":"2018-12-15T21:47:28.781Z","v":0}
{"name":"lib/index.js","hostname":"server.live-servers.net","pid":25082,"level":30,"levelPath":"info","msg":"loading ...","time":"2018-12-15T21:47:30.325Z","v":0}
{"name":"lib/index.js","hostname":"server.live-servers.net","pid":25082,"level":30,"levelPath":"info","msg":"ready on :8000","time":"2018-12-15T21:47:30.351Z","v":0}
{"name":"parsoid","hostname":"server.live-servers.net","pid":25057,"level":40,"levelPath":"warn/service-runner","msg":"startup finished","time":"2018-12-15T21:47:30.353Z","v":0}
{"name":"parsoid","hostname":"server.live-servers.net","pid":25082,"level":30,"logType":"info","wiki":"wiki$0","title":"Main_Page","oldId":null,"reqId":null,"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36","msg":"started wt2html","longMsg":"started wt2html","levelPath":"info","time":"2018-12-15T21:47:39.266Z","v":0}
{"name":"parsoid","hostname":"server.live-servers.net","pid":25082,"level":30,"logType":"info","wiki":"wiki$0","title":"Main_Page","oldId":5,"reqId":null,"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36","msg":"completed wt2html in 1144.7718710899353ms","longMsg":"completed wt2html in 1144.7718710899353ms","levelPath":"info","time":"2018-12-15T21:47:40.391Z","v":0}
^Z
[23]+  Stopped

不起作用

root@server:/etc/systemd/system# /usr/bin/node /var/www/gwart/mediawiki/extensions/VisualEditor/parsoid/bin/server.js
    {"name":"parsoid","hostname":"server.live-servers.net","pid":25145,"level":30,"levelPath":"info/service-runner","msg":"master(25145) initializing 2 workers","time":"2018-12-15T21:47:49.939Z","v":0}
    {"name":"parsoid","hostname":"server.live-servers.net","pid":25155,"level":60,"moduleName":"lib/index.js","levelPath":"fatal/service-runner/worker","msg":"Unexpected token ...","time":"2018-12-15T21:47:50.657Z","v":0}
    {"name":"parsoid","hostname":"server.live-servers.net","pid":25145,"level":40,"message":"first worker died during startup, continue startup","worker_pid":25155,"exit_code":1,"startup_attempt":1,"levelPath":"warn/service-runner/master","msg":"first worker died during startup, continue startup","time":"2018-12-15T21:47:51.668Z","v":0}

最佳答案

您可能在不同路径上安装了不同版本的 Node ,并且您的应用程序可能需要特定版本才能正确运行。考虑添加 console.log(process.version);到脚本的开头,使用这两个命令运行它,并比较输出。如果它们是不同的版本,您可能需要在 /usr/bin/node 中的 nvm 文件夹中添加指向正确版本的符号链接(symbolic link)。 .

关于javascript - 使用 `node` 启动 Node 应用程序可以工作,但使用 `/usr/bin/node` 启动它时则不行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797565/

相关文章:

Javascript 聊天室 : How to establish who im sending a message to?

node.js - Node express ( typescript )|将日期类型全局序列化为 epoach ms

java - 启动Service时如何运行MainActivity?

javascript - 使用 create-react-app 构建后的空白页面

java - 连接开销低的服务

web-services - 响应消息 : Composite message or optional fields

javascript - React-单击按钮时激活下一个选项卡

javascript - 在javascript中动态生成新 Canvas

javascript - 如何让 Paypal Checkout 与 Vue.JS 3 配合使用

JavaScript 从虚线版本数组中找到最高版本