我正在运行 Apache,并且我真的厌倦了编辑数百个名为 index.html 的文件。我想要的是这样的:
/root/foo
DirectoryIndex: foo.html
/root/bar
DirectoryIndex: bar.html
/root/bar/narf
DirectoryIndex: narf.html
...但对于我的所有目录都是自动的。有没有办法在 Apache 中做到这一点?
答案1
从你的评论来看,你并不执着于 DirectoryIndex 的想法,我敢打赌你可以用 mod_rewrite 实现同样的功能。比如
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.*)/(.*)$ http://mysite.com/$1/$2/$2.html [L]
以上内容未经过测试,只是一个大概的想法,即如果请求的文件名不存在,则获取完整路径并提供最后一个文件夹名称作为 .html 文件。正如我所说,没有测试获取目录路径的确切语法。