カテゴリー
WordPressプラグイン

Contact Form 7で403エラー

メールフォーム定番プラグインの Contact Form 7で新規フォームの作成や既存データの編集を行おうとすると403エラーが発生する現象に見舞われました。
はじめに気がついたのはヘテムルでしたが、ロリポップなど、他のレンタルサーバーでも見受けられるようです。
どうやらこれはサーバー側で順次導入が進んでいる WAF の影響のようです。

WAF とその弊害

WAF はウェブアプリケーションファイアウォールの略で外部ネットワークからの Web アプリケーションへの不正侵入を防御するもので、アプリケーションのレベルで管理が行えることが特徴です。
要するに Contact Form 7の編集行為が WAF により不正アクセスと見なされてしまったということです。
場合によっては WordPress でのダッシュボード(管理画面)上での他の動作でも引っかかることがあるようです。

もちろん、WAF を使わなければ、この403エラーは回避できます。
それでは無効にしてしまえばよいのでしょうか?

対処方法

WordPress ではサイト改ざんや乗っ取りは本当に後を絶ちません。
日本国内に限定しても、ひとつの通信業者内で1日に8,000件以上の改ざんが確認された例もあります。
セキュリティ強化のためにせっかくサーバー側で用意した WAF を安易に切ってしまうというのはお勧めできません。

一時的に WAF を無効にする

わたしの場合は Contact Form 7のフォーム編集という一時的な作業であったこと、また、管理画面を IP 制限していることから、保存時のみ、WAF 設定をオフにして対処するという方法をとりました。
多くのレンタルサーバーで WAF の設定はコントロールパネル上で行えます。

ヘテムルでのWAF有効/無効の切り替え
ヘテムルでの WAF 有効/無効の切り替え

例外処理を設定する

ヘテムルでは WAF 導入後、このような事例が頻発しているようで、下記のようにトラブルシューティングが公開されています。
こちらには htaccess で特定操作の除外記述の方法が書かれています。

WAF 設定により403エラーが表示される場合に関しまして

profile image

執筆:R3098

WEB サービス構築・監修が生業です。WordPress 関連では Aurora Heatmap などプラグイン開発も行っています。悩めるサイト運営者の無料相談受付けます!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトは reCAPTCHA によって保護されており、Google のプライバシーポリシー および 利用規約 に適用されます。

reCaptcha の認証期間が終了しました。ページを再読み込みしてください。