Apache 目录列表中不显示指向外部驱动器的软链接

Apache 目录列表中不显示指向外部驱动器的软链接

我使用的是 Ubuntu 8.10,通常通过在 Apache2 文档根目录中创建指向目标目录的软链接来与 LAN 上的人们共享我的内容。因此,如果我想共享我的视频目录,我将

  1. 光盘 /var/www

  2. ln -s ~/视频/ 视频

    然后 http:/// 会向其他用户列出视频目录。

当我尝试对我的外部 USB 驱动器执行同样的操作时,我遇到了问题。链接创建得很好。从命令行我可以像其他链接一样使用该链接,但 apache 不会在浏览器上显示此目录。我检查了所有权和权限。它们都很好。

答案1

Apache 不会跟踪符号链接,除非您在配置文件中指定 FollowSymLinks 选项,但我真的不喜欢在网络空间之外进行符号链接。一旦您允许它们,那么您就面临潜在的安全风险,如果创建链接,则可能会泄露一些敏感信息。

正确的做法是将别名添加到 apache 配置中。在 /etc/apache2/conf.d 中创建一个文件,内容如下

Alias /video/ "/home/aakash/Videos"
<Directory "/home/aakash/Videos/">
        Options Indexes MultiViews
        AllowOverride None
</Directory>

这意味着http://example.com/video将从您的视频目录中提供。

相关内容