WordPress: プラグインが原因でログインできなくなった場合の対処法


ある日 Sorry, your request cannot be accepted と表示されて、ログインすらできなくなってしまいました。 そのときの対処法をまとめました。

もし私と同じようなメッセージが表示されている方は参考にしてみてください。 私の場合は IP GEO Block プラグイン が原因でした。

表示されたメッセージ

Sorry, your request cannot be accepted.

« Back

解決法

ログインして IP GEO Block を無効にできればいいのですが、 ログインできませんのでデータベースまたはファイルを変更します。

データベースからプラグインを無効にする

プラグインの有効・無効はデータベースの wp_options テーブルに記録されています。 テーブル名の先頭 wp_ の部分はインストール時の設定によって異なる場合があります。

次のSQLを実行すると、すべてのプラグインを無効にできます。 ただ、私の場合は別のプラグインのエラーが出るようになったので、異なる方法をとりました。

私は IP GEO Block のみを無効にしました。 ひとつのプラグインだけを無効にする場合は少し細工が必要です。 次のようにして有効なプラグインの情報を取得します。

カラム option_value の値をチェックします。 例えば次のように表示されているはずです。

数値や文字数は、お使いのプラグイン状況によって変わります。ここから次のようにして値を変更します。

  1. 先頭の a: の次に書かれているのがプラグインの個数です。これを1減らします。
  2. i:2;s:29:"ip-geo-block/ip-geo-block.php"; の部分を削除します。
  3. 削除した部分より後にある、 i: の後の数字をそれぞれ1減らします。

結果として次のようになっているはずです。

この値を MySQL Admin を用いて保存します。 SQL の UPDATE 文 を使っても OK です。

このようにして無効にした後は、通常通りログインして、無効にしたプラグインを再度有効にします。 私はこれで解決しました。

ファイルからプラグインを無効にする

ディレクトリ wp-content/plugins の中の IP GEO Block のディレクトリを削除または名前変更します。 これでプラグインを無効にできます。