为什么 apache 没有跟踪我的符号链接?

为什么 apache 没有跟踪我的符号链接?

我需要链接到/var/www/html非 su 用户主目录中的目录。操作系统是 CENTos,服务器是 apache。目录的配置文件写成如下:

<Directory [Redacted]>
Option FollowSymLinks
</Directory>

目录内文件的权限如下: -rwxrwxr--

(软)符号链接的权限如下: lrwxrwxrwx

我所做的一切似乎都无法使它工作。我需要<Directory>为链接到的目录创建一个条目吗?我创建了一个,与上面的条目相同。无论如何,我在页面上看到的只是:禁止

这些文件是供下载的,而且相当大,所以如果可能的话我会避免复制它们。

答案1

虽然我不确定,但你可能<Directory>也需要目标。尝试不会有坏处。

此外,Apache 必须具有+x符号链接和目标的所有父目录的权限,因为它需要“下降”到目录中。使用namei -l符号链接上的工具查看路径组件的列表,并确保所有目录都存在权限。

答案2

使用 RHEL 8 时,我有一个指向用户目录的符号链接,它返回了 403 错误。
namei按照建议使用了用户1686这表明/home/userdrwx------。我用 修复了它chmod a+rx /home/user/

答案3

我不确定这是否是你的问题,但它应该是“选项s

所以:

<Directory [Redacted]>
Options FollowSymLinks
</Directory>

https://httpd.apache.org/docs/2.4/mod/core.html

您还可以使用“+”或“-”运算符来在混合规则时保持有效的语法。即

<Directory [Redacted]>
Options +FollowSymLinks -Indexes
</Directory>

相关内容