我有一个公共/目录,我已将其设置为包含express中的静态文件:
app.use(express.static(__dirname + '/public'));
它有一个图像目录
/public/images
这有各种图像的深层子树。如果我放入图像的完整路径,它加载没有问题。
http://mysite.com/images/tiles/grass.png
当我转到
等网址时http://mysite.com/images/tiles/
它只是给了我在尝试查找非静态路径时给出的错误,但该路径不存在。
如何使静态路径中的所有目录显示类似于Apache显示可导航目录结构的方式?
答案 0 :(得分:25)
因为你在放
时要求的是什么http://mysite.com/images/tiles/
是一个目录列表请求,似乎静态中间件只提供文件而不是目录。你必须使用
app.use(express.directory(your_path));
app.use(express.static(your_path));
这将允许您请求您正在谈论的URI。
答案 1 :(得分:11)
对于Express 4,这看起来有点不同:
var directory = require('serve-index');
app.use(directory(your_path));
点击此处了解详情: