【问题标题】:Excluding a directory from a web directory listing?从 Web 目录列表中排除目录?
【发布时间】:2011-05-20 08:59:25
【问题描述】:

我正在使用 WAMP

我的“www\mystuffs”文件夹中有 10 多个文件夹。我有一个名为 temp 的文件夹。如何从目录列表中隐藏此文件夹并创建一个链接以访问该文件夹中的文件...?

【问题讨论】:

  • 请具体问题而不是其他细节。尝试添加有关您的问题的更多信息,而不是其他问候:)

标签: php wamp


【解决方案1】:

如果您使用 apache 创建的列表,您可以通过将其添加到 "www\mystuffs\" 中的 .htaccess 文件中来隐藏它

IndexIgnore temp

然后你可以直接链接到那个文件夹,它应该列出里面的所有东西。

【讨论】:

    【解决方案2】:

    只需在该目录中创建一个 index.php,其中包含列出该文件夹中所有文件的链接。您可以使用以下代码来实现。

    <?php
    if ($handle = opendir('.')) {
        while (false !== ($file = readdir($handle))) {
            if ($file != "." && $file != "..") {
                echo "<a href='$file'>$file</a>\n";
            }
        }
        closedir($handle);
    }
    ?>
    

    【讨论】:

      【解决方案3】:

      我的“www\mystuffs”文件夹中有 10 多个文件夹。我有一个名为 temp 的文件夹。如何从目录列表中隐藏此文件夹

      http://httpd.apache.org/docs/2.2/mod/mod_autoindex.html#indexignore

      在文件夹 \www\mystuffs 中创建一个名为“.htaccess”的文件。

      在这个文件中添加一行:

      IndexIgnore temp
      

      这将导致 Apache 不显示此文件夹。

      注意:

      1. 文档说明这仅适用于文件。这不是真的,并且会隐藏目录/文件夹。
      2. 您必须通过编辑器创建“.htaccess”文件,因为 Windows 不允许文件名以“.”开头通过 Windows 资源管理器创建此文件时。

      ...并创建一个链接以访问该文件夹中的文件...?

      您可以通过 Apache 列出整个文件夹的目录列表,也可以创建自己的 index.html 文件...您不能将自己的链接插入到原始列表中。

      您可以做的是允许列出临时文件夹,并在该文件夹中创建一个“index.html”文件,其中列出您希望用户看到的任何文件。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多