nodejs 服务器仅从 cli 启动时才有效

nodejs 服务器仅从 cli 启动时才有效

我正在尝试在我的个人博客上运行一个节点应用程序,它确实显示静态内容,但当POST我通过 systemctl 启动服务器时无法将调用发送回服务器。但是当我运行时,node index服务器启动并可以将POSTJSON 请求发送回服务器。我该如何修复我的 systemd 单元以正确启动它,并具有与简单输入相同的能力node index

Systemctl 服务文件:

[Unit]
Description=systemd node unit
Documentation=https://XXXX.com
After=network.target

[Service]
Environment=NODE_PORT=7070
Type=simple
User=ubuntu
ExecStart=/usr/bin/node /XXXX/XXXXXX/XXXXXXXX/XX/index.js
Restart=on-failure

[Install]
WantedBy=multi-user.target

其他背景信息:

-为了路由到我的 nodejs 服务器,我使用 nginx 反向代理(:7070->example.com/something)

node index-我的 nodejs 应用程序在本地计算机上使用命令运行良好

-node -v 给了我:

v10.15.0

答案1

许多 Node.js 应用程序希望其工作目录是其存储的目录。但您的 systemd 单元不会更改工作目录。

您应该适当地设置工作目录。

[Service]
WorkingDirectory=/wherever/you/installed/it

相关内容