WordPress エラー「更新に失敗しました。返答が正しいJSONレスポンスではありません。」

2021年2月8日

eyecatch_173

問題点

173-001

WordPressの記事を編集しており、保存や公開しようとすると、画面上部に画像のように赤い背景に
「更新に失敗しました。返答が正しいJSONレスポンスではありません。」と
表示されるようになった。
その後、記事を閉じ再度確認したところ、保存や更新がされていませんでした。

編集後に追記。このエラーは1例です。WAFが原因のアクセス不可(403エラー)が起因となっているので、例えば、WordPressのログイン画面でアクセス不可になるなど、WordPress中に急にアクセス不可になった場合は、こちらが原因の場合があります。WAFのログを見るとわかりますが、WAFのログの見方などが、サーバーによって異なりますので、今回は記載しません。WAF絡みのエラーは、さくらインターネットでは発生したことがありませんが、GMO系(ロリポップやConoHa Wing)では何件か対応させていただきました。

スポンサーリンク

暫定的に回避するなら

調べてみると、ブロックエディター(Gutenberg(グーテンベルグ))が起因とのことで、Classic Editorのプラグインを入れるととりあえずは修復されました。ただし、Classic Editorは2022年に廃止が決まっているので、それでは根本的には解決がされない。

改善方法

.htaccessの内容

WordPressのルートにある、「.htaccess」の設定が飛んでいるとのことで中身を確認。
「mod_rewrite.c」に下記内容が最低限入っている必要がある。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

WAFのローカルIPアドレスを除外

WAF(WEBアプリケーションファイアウォール)の個別除外設定で、ローカル側のグローバルIPアドレスを除外する。ローカル側のグローバルIPアドレスは、通常特に契約をしていない場合、固定ではないので注意が定期的に変更する必要があります。

#Gutenberg対策 start--------
<IfModule mod_siteguard.c>
  SiteGuard_User_ExcludeSig ip(ローカル側のグローバルIPアドレス)
</IfModule>
#Gutenberg対策 end--------

WordPressのルートにある、「.htaccess」の最後に2行くらいあけてから上記のコードを追加してください。
この設定の場合は、WordPressで特定のIPだけWAFが動かない設定となります。セキュリティー面の問題があるので、必要以上のIPは登録しないでください。


ローカル側のグローバルIPアドレスは、次で表示されたものです。

あなたのローカル側のグローバルIPアドレス: 34.239.150.57 です。

このIPアドレスは、プログラムを組んでいますので、見る方によって異なります。

その他

このエラーは、今回は記事を記載時に発生したので、そちらをメインにしましたが、WordPressの更新系全般的に発生し、また、管理画面のログイン時にも発生します。

オススメ記事

eyecatch_442

開設1ヵ月 ConoHa WING Pagespeed Insights 速度 …

前回計測からの変更点 前回は、Google Adsenseの…

eyecatch_540

WordPress用のデータベースのIDとPASSを忘れた時の対処法…

問題点 WordPressにしか使っていないデータベースだと…

eyecatch_513

PHPで文字数制限の方法 WordPressの本文末で「…」加工に…

問題点 PHPで文字数制限をしたい。また、WordPress…