Apache 配置允许将网站作为指向用户目录的符号链接

Apache 配置允许将网站作为指向用户目录的符号链接

我已将 FC14 上的 Apache(httpd-2.2.17-1.fc14.x86_64)中的 httpd.conf 配置为指向用户主目录中存在的符号链接,方法是将以下配置添加到 httpd.conf。

<VirtualHost *:80>
    ServerName site.test.co.uk
    DocumentRoot /var/www/html/site.test.co.uk
    <Directory "/home/userA/www/site.test.co.uk">
            AllowOverride None
            Options Indexes FollowSymLinks MultiViews
            Order allow,deny
            allow from all
    </Directory>
</VirtualHost>

然后我使用了命令

ln -s /var/www/html/site.test.co.uk /home/user/www/site.test.co.uk

我已授予用户 userA 对目录结构的访问权限和主目录中文件夹的所有权(我以 root 身份登录)。我还授予组 userA 对组 apache 的访问权限,并重新启动了 httpd。

我遇到的问题是,当我查看网站 site.test.co.uk 时出现 403 禁止错误?

我可以通过符号链接 cd 到目录,这工作正常,但 apache 似乎无法访问符号链接。

提前致谢。

答案1

尝试cd使用 Apache 用户进入该文件夹,

最有可能的是你的主目录权限,或顶层某处的权限

su apache
cd home
cd user
cd www
cd site.test.co.uk

如果失败,则需要添加apache到组user并确保目录具有组读写权限drwxr-x---750

chmod -R 750 /home/user

答案2

您的Options指令告诉 Apache 跟随该目录内的符号链接,而您正尝试跟随指向该目录的符号链接。您需要在符号链接上方的目录中设置此指令,尽管我不确定这是否适用于 docroot。

您已经在 Apache 配置文件中直接配置了符号链接的目标,那么为什么不将其设置为文档根目录呢?

相关内容