浏览Node.js / express中的静态文件目录树

我有一个公共/目录,我已经设置为包含快速静态文件:

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

它有一个图像目录

 /public/images 

而且有很多图像的深层次的子树。 如果我放入图像的完整path,它加载没有问题。

 http://mysite.com/images/tiles/grass.png 

当我只是去一个url,如

 http://mysite.com/images/tiles/ 

它只是给我错误,当它试图find一个非静态的path,但path不存在。

我该如何做到这一点,所以静态path中的所有目录显示类似于Apache显示可导航目录结构的方式?

因为你要求什么时候放

 http://mysite.com/images/tiles/ 

是一个目录列表请求,似乎静态中间件只是提供文件而不是目录。 你必须使用

 app.use(express.directory(your_path)); app.use(express.static(your_path)); 

这将让你请求你正在谈论的URI。

对于Express 4,这看起来有点不同:

 var directory = require('serve-index'); app.use(directory(your_path)); 

在这里查看详情:

https://github.com/expressjs/serve-index