我需要使用我使用的 php 脚本使我的服务器列出目录,并且希望只使用 1 个文件列出目录,而不是在每个目录中分散数百万个文件。是否可以将真实文件路径用于默认文档字段?当任何特定目录中没有索引文件可以转发到我的 php 脚本时,可以使用它。
答案1
如果不进行一些恶意的攻击,就无法通过默认的 IIS 来做到这一点。
一种方法是使用 URL 重写。您需要将默认文档保留为 index.html(或其他任何内容),然后使用重写将所有请求重定向到 index.html(或任何带有尾部斜杠的 URL,或其他任何内容)以指向您的 PHP 文件。
IIS7 内置了此功能(我没有用过,所以不知道在哪里可以找到它)。对于 IIS6 及以下版本,您需要ISAPI 重写为了达成这个。
另一种方法是将文档处理程序更改为 404(或当未找到默认文档时的任何适当响应)以运行您的 PHP 脚本。不过这会在您的日志文件中生成大量故障。
您可以在 IIS6 中通过右键单击您的网站并转到“属性”找到此属性。我不知道在 IIS7 中哪里可以找到它,但我确定它就在附近。
答案2
这可能是一个愚蠢的答案,但如果你想列出目录,你不能打开目录浏览或类似的东西吗?