我们使用不允许目录列表的Web服务器.
有一个特定的目录我想允许列出.
如何制作一个包含此目录内容的简单HTML文件?
有足够的正当理由在apache或其他Web服务器中显式禁用自动目录索引.或者,例如,您可能希望仅在索引中包含某些文件类型.在这种情况下,您可能仍希望为特定文件夹提供静态生成的index.html文件.
这可以通过树轻松实现- 这是一种在大多数Linux发行版(例如ubuntu/debian :)上可用的简约实用程序,sudo apt install tree
其中包括生成XML,JSON或HTML输出.
生成一级深度的HTML目录索引:
tree -H '.' -L 1 --noreport --charset utf-8 > index.html
仅包含与glob模式匹配的特定文件类型,例如*.zip
文件:
tree -H '.' -L 1 --noreport --charset utf-8 -P "*.zip" > index.html
参数to
-H
将用作基本href,因此您可以传递相对路径,例如.
来自Web根目录的绝对路径,例如/files
.-L 1
仅将列表限制为当前目录.
我想索引生成器,我可以风格我想要的方式,所以结束了使用这个脚本 -除了具有自定义样式,脚本也将递归生成index.html
所有嵌套子目录文件.
对我来说PHP是最简单的方法:
$file
"; $i++; } } closedir($dh); ?>
将其放在您的目录中,并设置您希望它在$ path上搜索的位置.第一个if语句将隐藏您的php文件和.htaccess以及错误日志.然后它将显示带有链接的输出.这是非常简单的代码,易于编辑.
您可以:编写服务器端脚本页面,如PHP,JSP,ASP.net等,以动态生成此HTML
要么
设置您正在使用的Web服务器(例如Apache),以便为不包含welcome-page的目录(例如index.html)自动执行此操作
特别是在apache中,请阅读更多内容:编辑httpd.conf:http://justlinux.com/forum/showthread.php?s =& postid = 502789#post502789
或添加autoindex mod:http: //httpd.apache.org/docs/current/mod/mod_autoindex.html