gpt4 book ai didi

node.js - 如果 Express 服务器使用 package.json 中的脚本运行,它将不会出现

转载 作者:太空宇宙 更新时间:2023-11-03 23:51:37 27 4
gpt4 key购买 nike

网络服务器一切正常。
但是当我使用 package.json 中的脚本运行某些命令时,出现 404 错误。

下面是ecosystem.config.js文件配置。

module.exports = {
apps : [{
name: 'test',
script: './bin/www',
instances: 1,
exec_mode : "cluster",
autorestart: true,
watch: false,
args: ["master"],
log_date_format: "YYYY-MM-DD HH:mm:ss.SSS",
max_memory_restart: '1G',
},
{
name: 'test',
script: './bin/www',
instances: 7,
exec_mode : "cluster",
autorestart: true,
watch: false,
args: ["slave"],
log_date_format: "YYYY-MM-DD HH:mm:ss.SSS",
max_memory_restart: '1G',
}]
};

下面是我测试过的 package.json 中的脚本。

"cross-env NODE_ENV=production pm2 start ecosystem.config.js" // success
"cross-env NODE_ENV=production pm2 delete test & pm2 start ecosystem.config.js" // fail
"cross-env NODE_ENV=production pm2 delete test && pm2 start ecosystem.config.js" // fail
"cross-env NODE_ENV=production node ./bin/www" // success

“test”是ecosystem.config.js的name属性的值。
运行“pm2 start Ecosystem.config.js”,它应该可以工作。
但是,同时使用“pm2 delete test”命令会导致 Web 服务器上出现 404 错误。
命令“pm2 delete test”运行正常。我实际上看到“测试”进程在消失后再次运行。
我不知道为什么会发生这种情况。

最佳答案

您可以做一件事,我不知道它是对还是错,但将 pm2 脚本单独放在一个脚本中,并在第二个脚本中设置跨环境,创建运行这两个脚本的第三个脚本。

示例..

test1: "cross-env NODE_ENV=production",
test2: "pm2 delete test && pm2 start ecosystem.config.js",
test3: "npm run test1 && npm run test2"

关于node.js - 如果 Express 服务器使用 package.json 中的脚本运行,它将不会出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59210065/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com