【发布时间】:2020-05-27 17:18:16
【问题描述】:
我能够使用我的 MERN 堆栈应用程序成功设置 pm2,但是当我尝试运行 pm2 start server.js 并显示状态 online 但我无法在浏览器中访问我的 MERN 堆栈应用程序时,我在没有使用 pm2 npm run dev 和 Nodemon 的情况下运行我的应用程序,一切正常。下面是我的 server.js 文件
const express = require('express');
const mongoose = require('mongoose');
const morgan = require('morgan');
const bodyParser = require('body-parser');
const cors = require('cors');
require('dotenv').config();
const config = require('config');
const path = require('path');
const devPort = 8080;
// Setup express app
const app = express();
app.use(cors());
app.options('*', cors());
app.use(express.json());
app.use(morgan('combined'));
app.use(bodyParser.urlencoded({ extended: true }));
mongoose.Promise = global.Promise;
const db = config.get('MONGODB_URI');
mongoose.connect(db, {
useUnifiedTopology: true,
useNewUrlParser: true,
useCreateIndex: true,
useFindAndModify: false
});
mongoose.connection
.once('open', () => console.log('Database connected!'))
.on('error', error => console.log('Could not connect', error));
/*route/api/file is here*/
app.use('/api/user', require('./route/api/user'));
//server static assets in production
if (process.env.NODE_ENV === 'production') {
//set static folder
app.user(express.static('client/build'));
app.get('*', (req, res) => {
res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.htm'));
});
}
app.listen(process.env.PORT || devPort, () =>
console.log(`Node JS is running on port ${devPort}`)
);
这是终端中在线 pm2 server.js 的图像,但我无法访问它。 我想知道,是不是server.js文件的问题,请提出建议。 感谢您的帮助。
【问题讨论】:
标签: digital-ocean pm2