apacheにおいて、ブラウザにエラー画面が表示された場合
apacheにおいて、ブラウザにエラー画面が表示された場合
Forbidden You don't have permission to access /hoge/hoge.html on this server. Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.
アパッチの実行ユーザ確認
まずは、設定ファイルから確認
# less /etc/httpd/conf/httpd.conf User apache Group apache
実際にプロセスを見て確認
# ps aux root 3632 0.0 1.5 8800 3836 ? Ss Jul11 0:00 /usr/sbin/httpd apache 13835 0.0 1.6 8940 4172 ? S 00:02 0:01 /usr/sbin/httpd .......
user apacheで動いていることがわかる
ちなみに、apacheのグループはapacheだけであることも確認
# groups apache apache : apache
ここで、ディレクトリのパーミッションを確認
該当するディレクトリは、apacheユーザが見れない権限であった
# ls -al /hoge/ drwxrws--- 8 hoge webmaster 4096 7月 13 09:56 hoge/
対応方法1
group webmasterに、ユーザapacheを追加する
# vi /etc/group webmaster:x:900:.....,apache # groups apache (アパッチユーザが所由するgroup) apache : apache webmaster [変更したので、アパッチの再起動が必要(gracefulでok) ] # /etc/rc.d/init.d/httpd graceful
[参考] /etc/groupはグループにどのユーザーが所属しているかを定義するファイル 1行に1エントリずつ書かれ、各行の形式は以下のとおりである。 group_name:passwd:GID:user_list groups [user] - [user]がもつ、現在のグループ名の表示
# /etc/rc.d/init.d/httpd graceful
< |
# chmod -R 775 hoge ls -al /hoge/ drwxrwxr-x 8 hoge webmaster 4096 7月 13 09:56 hoge/