ロリポップでWordPressを使用している場合に起きる問題の解決方法を備忘録的に記載しておきます。
参考サイト:
エラーの原因はサーバ側のWAF(ウェブアプリケーションファイアウォール)
プラグインのカスタムフィールドテンプレートを更新しようとしたところ、サーバ側のエラーメッセージ
指定されたページ(URL)のアクセスは禁止されています。
が表示され、更新できず。最初はプラグインが古いのが原因?と思い、
- バージョンを確認する
- 一旦無効化して、有効化してみる
と対応しましたが、変わらずエラーのまま。ググってみるとどうやらWAFというロリポップ側のサーバ設定に問題があるらしい。
WAF は有効のまましておくこと
WAFはセキュリティー上、デフォルトで有効になっているので、無効にするのはよくない。エラーを開始する方法としてサーバ設定ファイル「.htaccess」に以下「特定のシグネチャを指定して除外する」というコードを追加する方法です。
SiteGuard_User_ExcludeSig XXXX(urldecode)
urldecodeはロリポップにログインした後、 > WEBツール > WAF設定 から確認できます。
サーバ設定ファイルを更新する
# BEGIN WordPress <IfModule mod_rewrite.c> ・・・・省略 </IfModule> # END WordPress SiteGuard_User_ExcludeSig sqlinj-15
ドメイン直下にある「.htaccess」の「# END WordPress」の下にコードを追加し、サーバへアップロードします。WordPressのダッシュボードを更新し、プラグインの設定画面に行き、更新ボタンを押しても、これでエラーは発生しないはずです。
あくまでも暫定措置として
この方法でエラーを回避して、一先ずエラー発生日の当日は問題なしとなります。「urldecode」は翌日にまた変わったコードとなるので、注意が必要。