eis*_*ati 2 linux apache permissions symlink vhosts
我创建了一个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
Run Code Online (Sandbox Code Playgroud)
我创建了新的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>
Run Code Online (Sandbox Code Playgroud)
现在,当我在浏览器中运行我的请求时,它说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
Run Code Online (Sandbox Code Playgroud)
怎么了?EC2阻止符号链接?请帮忙!
更新
现在,我能想到的唯一的问题是permission访问production的apache用户.确保权限/var/www/services/production(在目标文件夹)文件夹设置为0755两个符号链接的目标文件夹.
测试:成为用户为apache(sudo -u apache),现在尝试更改到目录(cd)并确保apache用户能够遍历.