[英]When restart one app, stops another app node.js
我有两个 node.js 应用程序在同一台服务器上运行。 当我重新启动一个监听端口 7777 的应用程序时,它会停止在端口 8044 上运行的另一个应用程序,即使它们在两个不同的端口上运行。 我怎样才能解决这个问题?
这是代码
aut/app.js:
var http = require('http');
var express = require('express'),
testsConfig = require('./config/testsConfig');
var bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.urlencoded({extended: true}));
app.use(bodyParser.json());
app.get('/', function (req, res, next) {
console.log('ROOT');
res.sendStatus(200);
});
app.post('/aut', function (req, res, next) {
if (req.body && req.body.secret && req.body.secret == "danzellovestodance") {
res.send(testsConfig);
} else {
res.sendStatus(500);
}
});
module.exports = app;
应用程序.js
var express = require('express');
var http = require('http');
var webhook = require('./git-webhook/app');
var aut = require('./aut/app');
http.createServer(webhook).listen(7777);
http.createServer(aut).listen(8044);
我曾经将每台服务器分成不同的 app.js 文件,但是当我启动一台服务器时,它停止了另一台
if [ "$1" = "start" ]; then
forever start -l /opt/aut.log -a /opt/aut/app.js
echo "Started"
elif [ "$1" = "stop" ]; then
forever stopall
echo "Stopped"
elif [ "$1" = "restart" ]; then
forever stopall
forever start -l /opt/aut.log -a /opt/aut/app.js
echo "Restarted"
elif [[ "$1" = "logs" || "$1" = "log" ]]; then
tail -f /opt/aut.log
else
echo 'Invalid command. You can only use "start", "stop", "restart", or "logs"'
fi
问题是您只有一个 Node 应用程序来启动两个服务器。
当您重新启动应用程序时,它会关闭它正在运行的所有服务器。
如果您希望它们能够独立控制,您实际上必须为第二个服务器创建第二个 Node 应用程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.