8

Centos6.4ボックスを実行しています。

vagrant upVagrant ファイルで同期フォルダー構成なしで実行しても問題ありません。経由でホスト マシンにアクセスできhttp://localhost:8080、Apache ページが表示されます。フォルダーにindex.html を作成でき/var/www/html、それも問題なく表示されます。

ただし、Vagrant ファイルに以下の行を追加した後、ページにアクセスすると403 Forbidden You don't have permission to access / on this server.代わりにエラーが表示されます。

config.vm.synced_folder "./source", "/var/www/html", :extra=>"dmode=777,fmode=777"

VM に入ると、次のような権限セットが表示されます/var/www

drwxr-xr-x.  6 root    root    4.0K Jul 20 23:15 .
drwxr-xr-x. 18 root    root    4.0K Jul 20 23:15 ..
drwxr-xr-x.  2 root    root    4.0K May 14 06:12 cgi-bin
drwxr-xr-x.  3 root    root    4.0K Jul 20 23:15 error
drwxrwxrwx.  1 vagrant vagrant  102 Jul 21 23:14 html
drwxr-xr-x.  3 root    root    4.0K Jul 20 23:18 icons

だから私はそれにApacheの所有権を設定しようとしました、

   config.vm.synced_folder "./source", "/var/www/html", :owner=>"apache",:group=>"apache",:extra=>"dmode=777,fmode=777"

しかし、それもうまくいきません。

どうやらそれには完全な読み取り/書き込み権限があり、Apacheが不平を言っている理由がわかりません。

4

1 に答える 1

16

httpd を実行しているユーザー/グループを特定し、ユーザーが/var/wwwそのサブフォルダーに対して実行権限を持っていることを確認します。

/var/wwwまた、Apache サイト構成ファイルで、以下のような正しいディレクティブがあることを確認してください。

    DocumentRoot /var/www
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride None
            Order allow,deny
            allow from all
    </Directory>

ゲストで SELinux を無効にします。開発環境では役に立ちません。

編集/etc/selinux/config

SELINUX を無効に変更する

SELINUX=disabled

vagrant ボックスを再起動します =>vagrant reload

#1 と #2 が役立つかどうかを確認します。

于 2013-07-21T22:13:46.770 に答える