gpt4 book ai didi

node.js - Express JS - 静态文件上的 404

转载 作者:搜寻专家 更新时间:2023-11-01 00:08:45 24 4
gpt4 key购买 nike

我似乎无法使用 express 3.x 来为我的公共(public)目录中的静态文件提供服务。他们都请求以 404 结尾。

    var express = require('express')  
, engine = require('ejs')
, app = express();


app.configure(function () {
app.use(express.static(__dirname + '/public'));
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
});

app.get('/', function(req, res) {
res.render('test.ejs')
});


app.listen(3000);

我的 test.ejs 引用了如下所示的 js 文件:

<script type="text/javascript" src="js/testscene.js"></script>

我一定是忽略了一些简单的事情。我有以下文件夹结构:

project
-public
-js
testscene.js
-views ]

谁能告诉我我错过了什么?

更新

我实际上创建了一个新项目并将我的脚本复制到这个新项目中并且它有效?!我想我只能将其作为某种局部怪异来关闭。感谢您的宝贵时间。

最佳答案

__dirname 是当前 .js 文件所在的目录。您的文件系统 ascii 艺术图省略了这个重要的拼图。例如,如果您的第一个代码片段位于 project/server.js,那么这是正确的。我认为然后在浏览器中加载 http://localhost:3000 应该可以正确找到 js/testscene.js 文件。然而,使用相对 URI 通常不是一个好主意,除非你真的确定你想要/需要它,所以为了理智起见,将其更改为 src="/js/testscene.js"

关于node.js - Express JS - 静态文件上的 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17387045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com