Node.js 快线无法到达

Node.js 快线无法到达,node.js,express,Node.js,Express,我有一个管理和主页分别路由文件。我也有不同的布局文件为家庭和管理。当我在本地开发人员上访问主页和管理路由时,一切正常,但当我尝试使用site.com/admin访问管理路由时,我无法获取/admin/response。以下是我的server.js: const express = require('express'); const exphbs = require('express-handlebars'); const methodOverride = require('method-over

我有一个管理和主页分别路由文件。我也有不同的布局文件为家庭和管理。当我在本地开发人员上访问主页和管理路由时,一切正常,但当我尝试使用site.com/admin访问管理路由时,我无法获取/admin/response。以下是我的server.js:

const express = require('express');
const exphbs = require('express-handlebars');
const methodOverride = require('method-override');
const flash = require('connect-flash');
const session = require('express-session');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
const path = require('path');


const app = express();


// Use path
app.use(express.static(path.join(__dirname, 'public')));

// Map Global Promise
mongoose.Promise = global.Promise;

// Connect to mongoose
mongoose.connect('mongodb://localhost/skillbuild')
    .then(() => console.log('MongoDB Connected...'))
    .catch(err => console.log(err));

// Load Idea model
// require('./models/Idea');
// const Idea = mongoose.model('ideas');

// Express Handlebars middleware
app.engine('handlebars', exphbs({
    defaultLayout: 'main'
}));
app.set('view engine', 'handlebars');

// BodyParser middleware
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

// Method Override middleware
app.use(methodOverride('_method'));

// Load routes
const home = require('./routes/home');
const admin = require('./routes/admin');


// Use routes
app.use('/', home);
app.use('/admin', admin);

// Express session middleware
app.use(session({
    secret: 'keyboard cat',
    resave: true,
    saveUninitialized: true
}));

app.use(flash());

// Global variables
app.use(function (req, res, next) {
    res.locals.success_msg = req.flash('success_msg');
    res.locals.error_msg = req.flash('error_msg');
    res.locals.error = req.flash('error');
    next();
});




const port = 80;

app.listen(port, () => {
    console.log(`Server started on port ${port}`);
});
home.js routes文件中的my home routes:

const express = require('express');
const router = express.Router();

router.all('/*', (req, res, next) => {
    req.app.locals.layout = 'main';
    next();
});

// index route 
router.get('/', (req, res) => {
    res.render('index');
});


// About route 
router.get('/about', (req, res) => {
    res.render('about');
});


//login route temp 
router.get('/login', (req, res) => {
    res.render('users/login');
});

module.exports = router;
const express = require('express');
const router = express.Router();

router.all('/*', (req, res, next) => {
    req.app.locals.layout = 'admin';
    next();
});

// admin index route 
router.get('/', (req, res) => {
    res.render('admin/index');
});

module.exports = router;
my admin.js路由文件:

const express = require('express');
const router = express.Router();

router.all('/*', (req, res, next) => {
    req.app.locals.layout = 'main';
    next();
});

// index route 
router.get('/', (req, res) => {
    res.render('index');
});


// About route 
router.get('/about', (req, res) => {
    res.render('about');
});


//login route temp 
router.get('/login', (req, res) => {
    res.render('users/login');
});

module.exports = router;
const express = require('express');
const router = express.Router();

router.all('/*', (req, res, next) => {
    req.app.locals.layout = 'admin';
    next();
});

// admin index route 
router.get('/', (req, res) => {
    res.render('admin/index');
});

module.exports = router;

好的……所以问题只是我需要用节点应用程序的pm2重启id重启服务器,以便加载更新的代码。问题已解决。

我认为您应该提供类似site.com:80/adminNo的端口,但该端口不起作用。此外,端口已经设置为80,这是http的默认端口,因此我认为不需要显式定义它。