Apache2.4で[access_compat:error]AH01797エラーの対処方法
2024/01/12
Apacheのエラーログを追っていると「[access_compat:error] [pid xxxxxxx] [client 111.222.333.444:xxxxxxx] AH01797: client denied by server configuration: /aaa/bbb/ccc/ddd.php」のようなエラーメッセージが出力されていた。以下に原因と対応方法をメモ。
原因
Apache2.4からはアクセス制限等の記述が以下のような形だと警告メッセージが出るとのこと。
Order allow,deny Allow from all
対応方法
以下記述に書き換える。
Require all granted
尚、特定のIPアドレスのみアクセスを許可したい場合は以下の通り。
Require all denied Require ip xxx.xxx.xxx.xxx
この辺りの記述に関してはこちらの記事が分かりやすかった。
注意点
Apacheの設定ファイルであるhttpd.conf以外にも.htaccess内の記述も同様なので注意する。というのも当方の環境ではhttpd.confに原因となる記述が見当たらず、調べてみると.htaccess側に原因の記述があった為。
関連記事
特定ディレクトリ以下のBasic認証を無効化する方法
Basic認証を設定しているサイトがあり、そちらを解除したかった。通常の場合だと ...
他ドメインから画像の呼び出し(直リンク)を禁止する方法
他ドメインからの画像の呼び出し、いわゆる直リンクの禁止を行いたかった。調べるとh ...
アクセスしてきたURLをRewriteRuleで書き換えたい
「http://aaa.com/a」というURLを叩いた際に「http://aa ...
apacheを再起動する際に影響を少なくする方法(graceful)
apacheを再起動するとクライアントとの通信が強制的に切断されてしまう。その影 ...
htaccessでスマホ判別とCookie制御する方法
サイトを閲覧しているデバイスがスマホ且つ特定のCookieの値が入っているユーザ ...