Wordpress管理画面が502BadGateWayでログインできないときの対処法【備忘録】

先日、Wordpress管理画面に入ろうとすると、謎に502badgatewayが出てブロックされました。ログイン自体はできるのに、その先に進めず。
あらゆるサイトを見て、すべての方法を試したのにも関わらず解決せず非常に困ったので、誰かの助けになれば&備忘録として、解決方法を記録します。
3回トライし、何度も成功と失敗を繰り返した格闘の記録を書き残しました。

状況

私の状況としては、謎に1つだけトラブルなく管理画面に入れちゃう端末があり、そのほかの端末は入れないというトラブルでした。
一つだけ入れちゃうので、これはどういうことだと悩みました。

解決方法①

まず試して、1週間だけ解決した方法としては、「管理画面のドメインを変えること」です。「サイトリニューアル」という方法を使えば、別のサブドメインorサブディレクトリでWordPressを作り、そしてブログを作り直し、最後にそのブログを表示するURLをもとのブログのURLにするというもの。説明が難しいので、詳細は「サイトリニューアル」で検索して調べてください。結論から言うと、この方法を使うことで、URLを変えないまま全く新しいサイトにすることができます。
記事のデータについては、謎に管理画面にアクセスできる端末を用いて、エクスポート用のプラグインを使ってデータを抜き、それを新しいサイトに入れることで、簡単に引越ししました。

解決方法②

しかし、1週間後、ふとまた奴が現れました。502BadGateWay…
またサイトリニューアルをするのかよ、と思ったのと、サイトリニューアルをしてもしばらくするとまた入れなくなっちゃうので、意味はない。どうしよ。と思ったわけです。

その時に、あれ?Cookieかも

とひらめきました。
というのも、今回も1端末だけ謎に管理画面に入れちゃう端末が存在したからです。その端末にあるCookieのデータを抜いてほかの端末に入れれば、見事成功するのではないかと。

これが結論から言うと、見事はまりました。

方法を簡単に紹介。
①拡張機能「Cookie Editor」をChromeに追加
②謎に入れちゃう端末で、管理画面を開ける
③Cookie Editorを実行(ブラウザの右上のとこから拡張機能を実行できる)
④ポップアップで出てきたCookieをすべてエクスポートして、jsonファイルでダウンロード
⑤エクスポートデータを、管理画面に入れない端末に移す
⑥入れない端末にも、CookieEditor入れる
⑦入れない端末で管理画面のURLを開けて、502BadGateWay画面を表示する
⑧CookieEditor実行
⑨CookieEditorでダウンロードしたCookieデータ(jsonファイル)をアップロードしてインポート
⑩ページリロード

これで入れました。

備忘録代わりに書いたので、非常に雑な説明となっています。
もし役に立った方はハートマークを押していただくと、意外と自分だけでなく皆さんの役にも立つのだとわかり、記事を詳しく書き直しますので、もしもこの方法で解決した方は押していただけると助かります。

あと、この雑な説明ではなかなか伝わらないと思うので、詳しく教えてほしい、同様の症状で困っているという方は、ここのコメント欄に記入もしくはTwitter(@Tabijie3274)の適当な投稿にリプライしてください。詳しくお伝えします。
少しでも誰かの助けになれば幸いです。

追記:根本的な話

おそらく原因は、ログイン~管理画面に遷移するときのCookie処理でトラブってることだと思いますが、なぜそうなっているのかはわかりません。また上記の方法は一時的にしのげても、根本的なシステムのトラブルの解決には全くなっていないので、直ったわけではないためご注意ください。
直し方は私自身もわからないため、有識者の方おられましたらご教授よろしくお願いします。

さらに追記

しかし、、、2週間後、再び奴が、、、
悪夢の502BadGateWay
しかも、今度は頼みの綱の「ログインできる端末」が一台もありません。
全端末で弾かれてしまう結果です。
正直なところ、Cookie戦法がもう効かなくなったため、お手上げで詰んでいます。
とはいえ、根本的な原因も分からないままなので、解決はできず。
どうしようか本当に困りました。
4時間考え抜いた末あるアイデアに
「新しいユーザーを追加してログインしたらどうだ?」
補足すると、Wordpressというのは複数人で共同編集ができます。そこで、新しいユーザーを追加して、そのユーザーに編集させればうまくいく可能性があります。
これがまたまたはまりましたので簡単に紹介。

https://akitblog.com/wordpress-myadduser/

管理画面にはもちろん入れませんから、まずデータベースに直接管理者を追加します。

これで成功する、、はずでしたが失敗します。
そこで次に、function.phpに、こちらのコードを追加します。

function set_user_role() {
  $user = new WP_User( 追加したユーザーID);
  $user->set_role( 'administrator'); 
}
add_action( 'init', 'set_user_role' );

詳しくはこちらから

そしてついに再復旧!
この方法を思いつくのは本当に大変でした…

次はいつ出てくるやらですが、またその時は頑張ります。
502BadGateWayとの闘いは続く…

この記事が気に入ったらサポートをしてみませんか?