我在MEAN STACK应用程序中工作,我在现场工作中面临一个问题 在我的实时网站中,我已经停止Apache服务器并使用pm2运行nodeJs 一旦nodeJs由pm2启动,我的网站运行得很好,但是每隔一天,Apache服务器就会自动启动并且我的nodeJs站点会停止。 停止Apache服务器后,nodeJS正常工作。
app.js
"use strict";
var logger = require("./config/log");
var express = require("express");
var https = require('https');
var http = require("http");
var fs = require('fs');
var app = express();
var exec = require('child_process').exec;
var config, hostName, sslOptions, httpServer, callSocketDir;
/**
* @description all process variables
*/
require("./config/vars")(app, fs);
config = require("./config/config.js")(app, express);
callSocketDir = './socket';
sslOptions = {
key: fs.readFileSync(global.hzConfig.privateKey),
cert: fs.readFileSync(global.hzConfig.certificate),
passphrase: global.hzConfig.passPhrase
};
httpServer = https.createServer(sslOptions, app).listen(global.hzConfig.port,function (req, res) {
logger.log("info", 'my site is listening on ssl port ' + global.hzConfig.port + ", proccess id is " + process.pid + '!');
initEmailServer();
});
require(callSocketDir)(app, httpServer);
停止apache服务器
/usr/local/apache/bin/apachectl stop
启动nodejs服务器
pm2 start httpsServer.js
依赖
"express" => "version" : "4.13.4",
"nodeJs" => "version" : "v7.4.0",
"https" => "version" : "^1.0.0"
答案 0 :(得分:0)
基本上,Apache服务器和nodejs服务器可能在同一端口上 例如 如果node js服务器在端口80上运行,并且您的Apache服务器到端口的端口也在80上运行
尝试将其中一台服务器设置为端口8080