httpd は期待どおりに conf/httpd.conf のドキュメントルートを読みません。

httpd は期待どおりに conf/httpd.conf のドキュメントルートを読みません。

私のCentOS7サーバーに「/var/www/html/myProject」フォルダにあるLaravelプロジェクトがあります。

「DocumentRoot」とディレクトリの/etc/httpd/conf/httpd.confにあるドキュメントルートを「/var/www/html/myProject/public」に変更したので、ブラウザにIPを入力すると項目が自動的に表示されます。

これを行い、ブラウザを介して自分のIPにアクセスしようとすると、次のメッセージが表示されます。

アクセス禁止 このサーバーの /form にアクセスする権限がありません。サーバーが htaccess ファイルを読み取れません。セキュリティのためにアクセスが拒否されました。

さらなる調査の結果、/var/log/httpd/error_logからアクセスしようとするたびに次のエラーが発生することがわかりました。

[Thu May 10 19:39:33.683522 2018] [core:crit] [pid 1994] (13)Permission denied: [client 79.182.62.1:51091] AH00529: /var/www/html/myProject/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/var/www/html/myProject/' is executable

パスは/var/www/html/myProject/publicでなければなりませんが、「public」が欠落しているため、これは奇妙に見えます。

私はApacheを数回再起動し、更新されたことを確認するためにDocumentRootパスを仮想パスに変更しました。

.htaccessファイルに何かがある可能性がありますか?ファイルは変更しませんでしたが、Laravelが作成したままにしておきました。

ベストアンサー1

これは、公開ファイルに対する権限によるものかもしれません。今度は完全な権限を与え、どのようなことをするのかを確認してください。

chmod 0777 /var/www/html/myProject/public

または

chmod -R 0777 /var/www/html/myProject

ページにまだアクセスできない場合は、ホストのSElinuxステータスを確認してください。

sestatus現在のモードを入力して確認してください。無効または許可モードにする必要があります。強制モードでは、httpdWebページにコンテンツが期待どおりに表示されないことがあります。

SElinux を許可モードに設定するには、次のコマンドを入力します。

setenforce 0

おすすめ記事