2

我创建了一个 Amazon EC2 实例并在其上安装了 Apache 和 PHP:

$ sudo yum install apache2
$ sudo yum install php
$ ls -al /var/www/services/
lrwxrwxrwx 1 root root   42 Jun 22 21:13 production -> /home/ec2-user/services

我创建了新的 VirtualHost:

<VirtualHost *:80>
    ServerName ec2-***.compute-1.amazonaws.com
    DocumentRoot "/var/www/services/production/public"

    <Directory "/var/www/services/production/public">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride All
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

现在,当我在浏览器中运行我的请求时,它说403 Forbidden并且日志显示符号链接问题:

[Wed Jun 22 21:14:19 2011] [error] [client ***] Symbolic link not allowed or link target not accessible: /var/www/services/production
[Wed Jun 22 21:14:20 2011] [error] [client ***] Symbolic link not allowed or link target not accessible: /var/www/services/production

怎么了?EC2 是否阻止符号链接?请帮忙!

4

2 回答 2

4

更新

现在,我能想到的唯一问题是用户permission访问。确保对(和目标文件夹)文件夹的权限在符号链接和目标文件夹上都设置为。productionapache/var/www/services/production0755

测试:以 apache ( ) 身份成为用户sudo -u apache,现在尝试切换到目录 ( cd) 并确保apache用户能够遍历。

于 2011-06-23T06:26:48.097 回答
2

Apache 是否对 /home/ec2-user/services 具有读取权限?符号链接的设计 0777 用于权限,但只有这样,所有内容才能通过以获取符号链接指向的任何内容的权限。

于 2011-06-22T21:32:11.780 回答