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
<
対応方法2 ディレクトリのパーミッションを緩くする(otherが見れるように)
# chmod -R 775 hoge
ls -al /hoge/
drwxrwxr-x   8 hoge       webmaster     4096  7月 13 09:56 hoge/