【问题标题】:Express - issue serving clientExpress - 问题服务客户
【发布时间】:2017-11-28 15:41:39
【问题描述】:

我有一个带有休息服务器和客户端的快速设置。其余部分工作正常。但是,当应用加载 index.html 时,它无法找到 index.html 中引用的(相对路径的)静态文件

控制台上的错误是:

   Warning: Unexpected block undefined on line undefined + of undefined. 
    This warning will be an error in v2.0.0
    GET /css/bootstrap.css 404 912.960 ms - 833

app.js 是:

var express = require('express');
var path = require('path');
var logger = require('morgan');
var bodyParser = require('body-parser');

var rest = require('./routes/rest');
var admin = require('./routes/admin');

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');

app.use( express.static('/public'));

app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

app.use('/rest', rest);
app.use('/rest/admin', admin);

app.use(express.static(__dirname + '/public'));
// catch 404 and forward to error handler
app.use(function(req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});

// error handler
app.use(function(err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render('error');
});

module.exports = app;

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    我的应用似乎缺少这个:

    app.use( '/', express.static(__dirname + '/public'));
    

    所以我换了:

    app.use( express.static('/public'));
    

    有了它,现在它可以工作了。感谢@Konga raju 在这里的回答:failed to load static files express js。 我没有做@Fausts 的建议,因为这是在 express 生成的文件中。

    【讨论】:

      猜你喜欢
      • 2011-05-26
      • 1970-01-01
      • 2016-03-30
      • 2011-06-06
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多