WordPressアプリでブログ更新できないときの対処法
私のホームページはロリポップのレンタルサーバーでWordPressをつかって作成しています。
このブログも同様です。
普段はブラウザでWordPressにログインして更新していますが、昨日は久しぶりにスマホのアプリでブログ更新をやってみました。
そうしたところ、何度やっても「公開する際にエラーが発生しました」とエラーメッセージでて更新されません。
なんとか自己解決できたので解決方法をまとめておきます。
問題はWAF(ウェブアプリケーションファイアウォール)
Googleにきいてみるとどうやら問題はWAFというものにあるようです。
ロリポップのヘルプによるとWAFとは
WAF(ウェブアプリケーションファイアウォール)は、ウェブサイトに対するクロスサイトスクリプティングやSQLインジェクションなどの攻撃を自動的にブロックします。
これまでのファイアウォールやIDS(侵入検知)、IPS(侵入防止)で防御できなかったウェブサイトへの攻撃を検知できることでより安全なサイト運営が実現されます。
攻撃パターンの定義ファイルは自動でアップデートされるので、操作を行っていただかなくても、最新の攻撃パターンをブロックすることが可能です。
というものだそうです。
これがWordPressアプリのアクセスをブロックしている可能性が高い。
それならWAFを無効にするか、WAFにWordPressアプリは危ないものじゃないよ、とおしえてあげる必要があります。
無効化はロリポップのセキュリティ設定から簡単にできそうでしたがそれも怖いのでなんとかできないかロリポップのヘルプをみていると解決方法がのっていました。
シグネチャのアクセスを許可すれば解決
ロリポップヘルプ「PHPやCGIでプログラムの編集をすると403エラーが表示されます。」の手段2:シグネチャのアクセスを許可する、が解決方法でした。
シグネチャって何?というところですが不正通信、アクセスの定義ファイル、ということです。
不正アクセスと認識されたシグネチャ、今回の場合はWordPressアプリのアクセスのシグネチャを許可してあげれば解決しそうです。
シグネチャの確認方法
そうするとWordPressアプリのシグネチャを確認しないといけません。
WordPressAPPとかかな?なんて思いましたが全然違いました。
許可したいシグネチャを確認するにはまず最近ブロックされたアクセスを確認します。
そしてその中から自分が許可したいアクセス、今回はWordPressアプリのアクセスのシグネチャを確認です。
ロリポップの管理画面から、セキュリティ→WAF設定へと進みます。
そして確認したいドメインのログ参照をクリックします。
そうするとこんな画面が表示されました。
検出されたシグネチャ、という欄に bof-try-2 とあります。
どうやらこれがWordPressアプリのシグネチャのようです。
シグネチャのアクセス許可方法
アクセスを許可したいシグネチャは「bof-try-2」だと確認できました。
次は実際にこのシグネチャのアクセスを許可しないといけません。
許可は次のようにします。
ロリポップ管理画面からサーバーの管理・設定→ロリポップ!FTPへと進みます。
そうするとFTPの画面へとすすみます。
そこで、対象ドメインのデータが保存されている階層の「.htaccess」ファイルをひらきます。
これを開くと次のような画面になります。
この中に「SiteGuard_User_ExcludeSig 確認したシグネチャ」と記載すればアクセスを許可したことになるようです。
今回は「bof-try-2」というシグネチャのアクセスを許可したいので画像では青で反転している部分のように記載しました。
この記載を追加した後、保存すればアクセス許可がされ、WordPressアプリでのブログ更新も可能となるはずです。
無事WordPressアプリから更新できました。
昨日の夜、アプリから更新できず、下書き保存もできなかったためどうしよう、と思いましたがなんとかなりました。
上記のように対処した結果、下書きも無駄にならず無事にアプリから更新できました。
解決の方向性を示してくれたGoogleやロリポップの丁寧なヘルプに感謝です。