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 に答える