この質問はよく聞かれますが、私が見た解決策はうまくいきませんでした。
1つの仮想ホストのみが有効になっており、ドキュメントルートの下にないフォルダーへのアクセスを有効にしようとしています
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
Alias /movies /home/username/Videos/Movies
<Directory /home/username/Videos/Movies/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
/etc/apache2/envvars
次のように設定しました
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=public
/ home / username / Videos /とそのサブフォルダーの所有username:public
者を確認し、アクセス権を777に設定し(775が機能しなくなった後)、ユーザーwww-data
がgroupに属していることを確認しましたpublic
。
今、私が閲覧するとき、私http://localhost/movies
は得る
[Mon Apr 21 11:28:14.971844 2014] [core:error] [pid 1385:tid 140067725104896] (13)Permission denied: [client 127.0.0.1:46603] AH00035: access to /movies/ denied (filesystem path '/home/username/Videos') because search permissions are missing on a component of the path
しかし、(自分のユーザー名)で/etc/apache2/envvars
Apacheを実行するように設定するとusername
、すべて正常に動作します。問題は許可に関連していますが、私の場合はどうなのかわかりません。特に、アクセス許可をに設定した場合777
。何か案は?
PS Ubuntuバージョンは14.04、Apacheは2.4.7であり、他の構成ファイルは編集していません。
/home
ACLを有効にしてマウントした可能性はありますか?(許可ビットの最後に「+」記号があります(確認してくださいls -l
))