是否可以使用正在运行的网站浏览Apache服务器上的目录?
示例:我myserver/mydirectory
有index.html
和'test.txt`。假设浏览已启用,我可以以某种方式列出这些文件吗?
答案 0 :(得分:0)
Apache配置中的DirectoryIndex
指令告诉Apache要查找哪些索引文件。默认设置包括index.html,因此如果您的目录中有这样的文件,那么如果您在未指定特定文件的情况下进入该站点,这将是Apache将提供的文件(这是您已经知道的,但为了完整性而包括在内)。 / p>
要在Apache中启用目录列表,请查看Options Indexes
选项。例如,假设您的网站位于/var/www/website
:
<Directory /var/www/website/mydirectory>
Options Indexes FollowSymLinks
</Directory>
但是,如果Apache找不到索引文件,则只会启用文件列表。因此,解决方案是删除(或重命名index.html
),或使用像PHP这样的网站脚本语言来启用目录列表(为此,谷歌是你的朋友: - )
答案 1 :(得分:0)
您可以尝试以下几种方法:
找到以“DirectoryIndex”开头的行,并将其替换为“DirectoryIndex disabled”,这样apache就不会像index.html那样服务器默认文件,只是列出文件。但是如果你愿意,你可以明确地请求它。
如果默认文档设置对您很重要,您还可以配置apache以侦听另一个端口并在该端口上设置虚拟主机,并为虚拟主机执行与“DirectoryIndex”相同的操作,这样您就拥有了两个端口,一个用于提供默认文档,另一个用于列出文件。
如果您只想使用一个端口,可以尝试不。 2选项,然后设置一个代理,将所有以/ list /开头的请求发送到另一个虚拟主机,这样你就可以在一个端口上工作,如果你想要文件列表而不是写“/ myserver / mydirectory”你请求“/列表/ MYSERVER / mydirectory中”