【问题标题】:Express.js assets not found未找到 Express.js 资产
【发布时间】:2013-06-30 16:57:48
【问题描述】:

我有一个快递服务器:

//setup Dependencies
var connect = require('connect')
    , express = require('express')
    , port = (process.env.PORT || 8081);

//DB Setup removed for brevity

var server = express.createServer();
server.configure(function(){
    server.set('views', __dirname + '/views');
    server.set('view engine', 'jade')
    server.set('view options', { layout: false });
    server.use(connect.bodyParser());
    server.use(server.router);
    server.use(express.static(__dirname + '/public'));
});

还有主页视图:

server.get('/', function(req,res){
  res.render('index');
});

我的文件夹结构在哪里:

server.js
/views/index.jade
/public/stylesheets/bootstrap.min.css
/public/javascripts/bootstrap.js

但是,当我尝试点击 /stylesheets/bootstrap.min.css 或 /public/stylesheets/bootstrap.min.css 时,我得到一个 404。形成我可以在 express.js github repo 中找到的示例,我想我'我设置正确...但我显然错过了一些东西。

【问题讨论】:

  • 您是否尝试通过调用 stylesheet/bootstrap.min.css 而不是 /stylesheet/... 来获取样式表?
  • 我试图通过直接访问 url 来直接点击文件(stackoverflow 不允许我发布完整的 localhost url)

标签: express pug assets


【解决方案1】:

我可以通过这些配置来工作:

server.use(express.static(__dirname + 'public'));  ---> remove the "/"

并在您的<head> 中请求以下文件:

<link rel="stylesheet" href="/stylesheets/bootstrap.min.css">

完整的网址应该是http://example.com/stylesheets/bootstrap.min.css

【讨论】:

  • 我仍然无法让它在我现有的项目中工作,但使用您所描述的内容进行全新安装。明确的示例也使用它而不使用斜线。会给你正确的答案,因为这在语法上是正确的:)
猜你喜欢
  • 2011-06-06
  • 1970-01-01
  • 2014-12-12
  • 1970-01-01
  • 2014-10-10
  • 2017-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多