セキュリティ関係のプラグインを導入していると、サイトの引っ越しやデータ移行した際に、WordPressにログインができなくなったり、ログインURLが変わってしまうといったことが起きます。
レンタルサーバーの引っ越しをする際に、WordPressで製作したサイトではプラグイン「All-in-One WP Migration」を使用して簡単に引っ越しができます。
しかし、引っ越しするサーバーにプラグインでデータをインポートで丸々サイトを移行できたけど、サイト自体は表示出来るけど、WordPressにログイン出来ないってことが起きる事があります。
考えられる原因として、プラグイン「SiteGuard WP Plugin」か「reCAPTCHA」が関係していることがあり、その時の対処法について解説します。
プラグイン「All-in-One WP Migration」の使い方に関しては下記の記事で詳しく解説してるので合わせて参考になさってください。
ページが見つからない
「All-in-One WP Migration」でデータを丸々移動した際に、ログインURLが変更されてしまいログインができなくなり、替わりに「ページが見つかりません」と404.phpのページが表示されることがあります。
原因としてプラグイン「SiteGuard WP Plugin」などが関係していることがあるので、その解決方法を解説します。
SiteGuard WP Plugin無効化
セキュリティ強化プラグイン「SiteGuard WP Plugin」を有効化にした状態でプラグイン「All-in-One WP Migration」でサイト移行元サイトのデータをエクスポートし移行先のサイトにインポートした場合、.htaccessの設定によりWordPress管理画面にアクセスできない現象が起きます。
サイト移行の手順としてはプラグイン「SiteGuard WP Plugin」を無効化して、無効化したデータをプラグイン「All-in-One WP Migration」でエクスポート・インポートの手順が理想です。
SiteGuard WP Plugin有効化状態のインポート【対応】
プラグイン「SiteGuard WP Plugin」が有効になっている状態で移行先にインポートしてしまった場合はサイトは開けるけどWordPress管理画面にログインができません。
対処法としてはプラグイン「SiteGuard WP Plugin」を無効化しなければいけません。しかし、無効化するにはWordPress管理画面にログインしないいけない!!と、どうすればいいかわからない状態になっていると思います。
そんな時は、FTPソフト(FileZilla)を使ってプラグインを無効化します。
FTPでプラグインを無効化
プラグインのファイル名を変更することによって、プラグイン全体を無効化します。
プラグインがある階層はwp-content→pluginsです。
pluginsとなっているのをpluginszzzやplugins000やplugins_stopなど適当なファイル名に変更します。
ファイル名を変更することによってプラグインがすべて機能しなくなるので、後はhttps://サイトURL/wp-adminとURLを入力し移行前に設定していた「ユーザー名またはメールアドレス」と「パスワード」を入力することでWordPress管理画面にログインすることができます。
※プラグインを停止したら、WordPress初期のwp-adminになっています。
実際のWordPress管理画面で見てみると「プラグインsiteguard/siteguard.phpはエラーにより停止しました:プラグインファイルが存在しません。」と表示されています。
ログインが完了した後は、再度FTPソフトでファイル名をpluginsに戻すとプラグインが使用可能になります。
今回はプラグインをすべて無効にしましたが、「SiteGuard WP Plugin」が原因とわかっていれば、wp-content→plugins→siteguardでsiteguard_stopなどに変更するだけでもOKです。
SiteGuard WP Pluginのログインページ変更
プラグイン「SiteGuard WP Plugin」で再度「変更後のログインページ名」でWordPress管理画面のURLの確認をして変更が必要な場合は変更しましょう。
SiteGuard→ログインページ変更→変更後のログインページ名のURL変更。
変更後は実際のWordPressログインURLになる為、URLは忘れないようにメモを残しておきましょう。
WordPress管理画面のURLがわからない場合
WordPressログイン画面のURLがわからなくなった場合は、FTP上一番上の階層に.htaccessのファイルがあるのでこのファイルをローカルにダウンロードします。
ダウンロードした.htaccessのファイルをメモ帳もしくはVS CODEで開きます。
<IFModule></IFModule>の中にRewriteRule~wp-login.phpの間にプラグイン「SiteGuard WP Plugin」で設定したURLが記述されているので、メモを残していなくても確認する方法はあります。
reCAPTCHAがログインをブロック
WordPressログイン画面までは到達できたが、続いてログインボタンを押しても反応しない問題も発生することがあります。
reCAPTCHAのプラグインinvisible-recaptchaを「SiteGuard WP Plugin」で対応したファイル名変更で無効にするとログインすることができますが、プラグインを有効化するとまたログインできない場合があります。
reCAPTCHAが何故ブロックしているのかの根本的な原因追及が必要になるので、それについても解説します。
プラグインを無効にしてログイン
一旦wordpressにログインしたい場合はプラグインを無効化させる方法もあります。
FTPソフトFileZilla(ファイルジラ)→wp-content→plugins→advanced-nocaptcha-recaptchaの文字末尾にzzzなど適当な文字を入れて無効化します。
これでreCAPTCHAが無効化されログインできるようになった後は、WordPressにログインしている状態で下記の操作を行っていきます。
reCAPTCHAのkey
「reCAPTCHA側のkey」とWordPressプラグイン「Invisible reCaptcha」のサイトキーもしくはシークレットキーの設定が違う可能性が考えられます。
▪Google reCAPTCHA(ブラウザ)
https://www.google.com/recaptcha/about/
Google reCAPTCHA→V3 Admin Consoleでログイン。
歯車を選択して設定を開きます。
re CAPTCHAのキーをクリックするとサイトキーとシークレットキーが表示されます。
※旧バージョン
▪lnvisible reCaptcha(WordPress管理画面)
WordPress管理画面→設定→Invisible reCaptcha 設定を開きます。
ここで、「reCAPTCHA側のkey」とWordPressプラグイン「Invisible reCaptcha」のサイトキーとシークレットキーの設定が違うとログインができない原因になるので、設定を同じにして変更を保存をクリックして保存します。
※新バージョン
wordpress管理画面→CAPTCHA 4WPをクリック。
サイトキーとシークレットキーをWebサイトreCAPTCHAのkeyの文字に合わせる。
以上がプラグイン「SiteGuard WP Plugin」「reCAPTCHA」が原因でログインできない時の対処法になります。
この方法でまだWordPress管理画面に入れない場合は違う原因がある為、プラグイン無効とは別の方法で解決する必要があります。
セキュリティやITに関して頭に入ってきずらいところではありますが、一度覚えてしまえばインターネットについてさらに面白さがましてくると思います。