client denied by server configurationエラー

image300:https://cdn-ak.f.st-hatena.com/images/fotolife/a/araemonz/20180901/20180901094614.png Apache のエラーログで「client denied by server configuration:」と出た時の対処法。放っておいても問題はなさそうだが、Apacheのエラーログを見やすくしたいため細かいエラーを徹底的になくしていく。 バーチャルホストでの運営なので、バーチャルホストの設定ファイル、virtualhost.conf を開く。

「Require all granted」を記述するする。

<VirtualHost *:80>
        ServerName hogehoge.xxxxxxxxx.com
        DocumentRoot /somewhere/hogehoge
        &lt;Directory "/somewhere/hogehoge">
            Require all granted
        &lt;/Directory>
<VirtualHost>

Apache 再起動。 /etc/rc.d/init.d/httpd restart

これで解決したと思ったが、今度は下記のようなエラーが出てしまった。 configuration error: couldn't perform authentication. AuthType not set!:

「Require all granted」はApache2.4系の書き方のようだ。 でApacheのバージョンを確認してみる。 httpd -v

やはり2.4以前のバージョンがインストールされていた。 この場合「Require all granted」ではなく、「Order allow,deny」「Allow from all」と書くようだ。 なので、最終的な書き方は次のようになる。

<VirtualHost *:80>
        ServerName hogehoge.xxxxxxxxx.com
        DocumentRoot /somewhere/hogehoge
        &lt;Directory "/somewhere/hogehoge">
            Order allow,deny
            Allow from all
        &lt;/Directory>
</VirtualHost>

これで解決!と思ったが、またエラーが出てしまった。 client denied by server configuration: