※本記事にはプロモーション(広告)が含まれています。
WordPressの管理画面に入れなくなったとき、最初は「パスワードを間違えたかな」くらいに思うことが多いです。でも何度試しても入れない。メールアドレスも合っているはずなのに、ログイン画面が返ってくるだけ。
こういう状況、原因は1つではありません。パスワード忘れのこともあれば、プラグインが原因のことも、サーバー移行後の設定のズレが原因のこともあります。
ログインURLは本当にあっていますか?
まず、ログイン画面のURLを確認します。
WordPressのデフォルトのログインURLは次の形です。
https://あなたのドメイン/wp-login.php
または
https://あなたのドメイン/wp-admin/
どちらにアクセスしても、ログイン画面が表示されるはずです。「ページが見つかりません」「404エラー」が出る場合は、URLが変わっている可能性があります。
もう一点確認したいのが、HTTPSとHTTPの違いです。「https://」で始まるURLでアクセスしているのに、SSL証明書の設定がまだ済んでいないサイトでは、エラーが出ることがあります。そのときは「http://」に変えてアクセスしてみてください。
それでも画面が出ない場合、URLの問題よりも別の原因が考えられます。次のセクションに進んでください。
ちなみに、ログインURLにたどり着けているのに「間違っているユーザー名またはパスワードです」というエラーが出るだけなら、次のパスワードのセクションへどうぞ。
パスワードやユーザー名を忘れてしまったときの戻し方
ログイン画面には表示されている「パスワードをお忘れですか?」のリンクから、メールアドレスを使ってパスワードを再設定できます。
ログイン画面の「パスワードをお忘れですか?」をクリックして、登録したメールアドレスまたはユーザー名を入力します。送信すると、そのメールアドレス宛にパスワードリセット用のリンクが届きます。届いたメールのリンクを開いて、新しいパスワードを設定してください。
ここで問題になるのが「メールが届かない」ケースです。
原因として多いのは、迷惑メールフォルダに入っている、登録したメールアドレスをすでに使っていない、WordPressからメールが送信できない設定になっているの3つです。
まず迷惑メールフォルダを確認してください。それでも届かない場合は、WordPressの管理データベースを直接操作してパスワードをリセットする方法があります。メールを使わずにパスワードを変更する操作なので、少し手順が増えます。難しい操作は後半でまとめて説明します。
ユーザー名がわからなくなってしまった場合は、WordPressインストール時に使ったメールアドレスでも入れることがあります。試してみてください。
自分の状況、どれに近い?
ログイン画面に到達できているのに入れない、または入ってもすぐ弾かれる場合、何をしたときから起きたかによって原因が絞れます。
サーバー移行直後から入れなくなった
最も根本的な確認ポイントが、データベースの接続設定です。
移行後にログインできなくなる原因として一番多いのが、「wp-config.php」というファイルに書かれたデータベースの接続情報と、実際の新サーバーのデータベース設定がずれている状態です。
wp-config.phpはWordPressの動作に必要な設定をすべて持っているファイルで、データベース名・ユーザー名・パスワード・ホスト名の4つが含まれています。移行元サーバーでうまく動いていたこのファイルをそのまま移してきても、移行先のデータベース情報が違う場合はログインどころかサイト自体が動きません。
FTP(またはサーバーのファイルマネージャー)でWordPressのルートフォルダにあるwp-config.phpを開きます。以下の4行を確認してください。
define('DB_NAME', 'データベース名');
define('DB_USER', 'データベースユーザー名');
define('DB_PASSWORD', 'データベースパスワード');
define('DB_HOST', 'localhost');
この4つの値が、新しいサーバー側で設定したデータベースの情報と一致しているか照合します。サーバーのコントロールパネルやphpMyAdminで確認できます。
また、移行後にWordPressのサイトURLがずれている場合もあります。phpMyAdminで「wp_options」テーブルを開き、「siteurl」と「home」の値を確認してください。ここに古いサーバーのURLが残っていると、ログイン後のリダイレクトがうまくいかなくなります。
もう一つ見落としがちなのが、サーバー側の「PHPのバージョン」です。移行元が古いPHPで動いていたWordPressを、PHP 8.x系の新しいサーバーに移すと、プラグインやテーマがエラーを起こしてログインできなくなることがあります。サーバーのコントロールパネルでPHPバージョンを確認し、元のサーバーに合わせるか、段階的に上げていってください。
WordPressまたはプラグインを更新した直後から入れなくなった
WordPressのコアやプラグインをアップデートした後からログインできなくなった場合、更新によってPHPのエラーが発生している可能性が高いです。
まずブラウザで「wp-admin/」にアクセスしたときに、真っ白な画面(ホワイトスクリーン・エラーを示す白画面)や短いエラーメッセージが出ていないか確認します。
エラーメッセージが出ている場合、その内容がPHPのエラーであれば、特定のプラグインやテーマが原因のことが多いです。
何もメッセージが出ずにログイン画面に戻ってしまう(ループする)場合は、ログイン直後にログアウトされる状態で、これも後のセクションで扱います。
新しいプラグインを追加した直後から入れなくなった
プラグインを有効化した直後からログインできなくなった、または有効化しようとしたらエラーが出てそのまま入れなくなったというケースです。
このときの解決策は、そのプラグインをFTPで無効化することです。
特に何もしていないのに急に入れなくなった
設定変更もプラグイン更新もしていないのに、ある日突然ログインできなくなったというケースです。心当たりがないだけに「サイトが壊れたのかも」と焦りやすいですが、原因は3つに絞られます。
Cookieのズレ(ログインループが起きているとき)
パスワードを入力すると画面が一瞬切り替わるのに、またログイン画面に戻ってしまう。この「ログインループ」は、ブラウザが保持しているCookieの情報がWordPress側の設定とズレているときに起きます。
WAF(サーバーの不正アクセス防御機能)による誤検知
突然ログイン画面で「403 Forbidden」と表示されたり、接続がブロックされたりする場合は、サーバー側のWAFが正常なアクセスを誤って攻撃と判定しているケースがあります。心当たりがないのにブロックされている感覚がある場合は「サーバー側のWAFが原因でブロックされているとき」のセクションを確認してください。
SiteGuardのIP制限(自分のIPが変わっていた)
SiteGuardというセキュリティプラグインを使っている場合、外出先やVPN利用時にIPアドレスが変わると、ログインページへのアクセス自体がブロックされることがあります。「いつも使っているパソコンなのにURLが開かない」という場合はこれが原因のことがあります。「SiteGuardでURLを変更して忘れた・IPで弾かれるとき」のセクションに進んでください。
ログインしてもすぐ弾かれる・ループするとき
パスワードとユーザー名は合っているし、管理画面にアクセスしようとする。でもなぜかすぐにログイン画面に戻ってしまう、または「こんにちは、○○さん」という画面が一瞬表示されてからまたログイン画面になる。
このログインループは、WordPressのCookie(クッキー)の設定が原因であることがほとんどです。
WordPressはログイン状態を保つためにCookieを使っています。このCookieの設定にズレがあると、ログインしても認証がうまく保持されません。
試してほしいのが次の2つです。
ブラウザのCookieをすべて削除して再試行する
使っているブラウザの設定から、Cookieと一時ファイルを削除してから、もう一度ログインしてみてください。Chromeであれば「設定 → プライバシーとセキュリティ → 閲覧履歴データの削除」から操作できます。
別のブラウザやシークレットモードで試す
普段と違うブラウザ、またはシークレットウィンドウ(プライベートウィンドウ)からログインしてみます。これで入れる場合は、元のブラウザのCookieや拡張機能が邪魔をしています。
それでも解消しない場合、wp-config.phpへの追記で対処できることがあります。
wp-config.phpに以下の行を追加してください(「require_once」と書かれた行より前に追加します)。
define('COOKIEPATH', '/');
define('COOKIE_DOMAIN', 'あなたのドメイン');
「あなたのドメイン」は「example.com」のようにドメインだけを書いてください(「https://」は不要です)。
サーバー移行後でWP_HOME / WP_SITEURLが旧URLのままの場合も同様のループが起きます。wp-config.phpに以下を追記して一時的に固定する方法もあります。
define('WP_HOME', 'https://あなたのドメイン');
define('WP_SITEURL', 'https://あなたのドメイン');
これでログインできたら、管理画面の「設定 → 一般」からURLを正しく設定し直して、追記した行を削除してください。
プラグインが原因なら、FTPで無効化できる
こんな人向け: プラグインやWordPressのアップデート直後からログインできなくなった人。
読まなくていい人: 移行後のトラブルやCookieループが疑われる人(前後のセクションへ)。
プラグインやテーマが原因でエラーが発生しているとき、管理画面に入れないのでWordPress内から操作できません。そのときはFTP(サーバー上のファイルをパソコンから直接操作するための仕組み)を使います。FTPソフト(FileZilla等)をパソコンにインストールし、サーバーの「FTP接続情報」(ホスト名・ユーザー名・パスワード)を入力して接続します。接続情報はサーバーの管理画面で確認できます。
すべてのプラグインを一括で無効化する
WordPressのプラグインは「wp-content/plugins/」というフォルダに入っています。
このフォルダ名を「plugins_backup」のように別の名前に変更してください。フォルダ名が変わると、WordPressはプラグインを認識できなくなり、自動的に無効化されます。
この状態でログインを試します。入れた場合は、プラグインのどれかが原因です。フォルダ名を元の「plugins」に戻してから、管理画面でプラグインを1つずつ有効化して、問題を起こしているものを特定してください。
特定のプラグインだけ無効化する
どのプラグインが原因か目星がついている場合は、そのプラグインのフォルダだけ名前を変えます。「wp-content/plugins/」の中に、プラグインごとのフォルダがあります。怪しいフォルダ名を変えるだけで、そのプラグインだけを無効化できます。
テーマが原因のとき
テーマのエラーが原因の場合は、「wp-content/themes/」のフォルダを同様に操作します。
今使っているテーマのフォルダ名を変えると、WordPressはデフォルトのテーマに切り替えます。この状態でログインできれば、テーマが原因です。
ただし、テーマを変えると見た目が変わります。操作が終わったらフォルダ名を戻してください。
サーバーのファイルマネージャーでも同じ操作ができる
FTPソフトを使わなくても、Xserverなら「ファイルマネージャー」、ConoHa WINGなら「ファイルマネージャー」として、サーバー管理画面内からブラウザでファイル操作できます。慣れていない場合はこちらの方が直感的に操作できます。
サーバー移行後で詰まっているなら
こんな人向け: サーバー移行(引っ越し)を行った後からログインできなくなった人。
読まなくていい人: 移行はしておらず、ある日突然ログインできなくなった人(上の「特に何もしていないのに」のセクションへ)。
この状況は、WordPressの引っ越し(サーバー移行)を行った後に起きることが多いです。
wp-config.phpのデータベース情報を照合する
先のセクションでも触れましたが、移行後のログイン不可はまずここを確認します。
新しいサーバーでデータベースを作成したときの情報と、wp-config.phpに書かれた情報が一致しているか確認してください。特にDB_HOSTについては、サーバーによって「localhost」ではなく「mysql.サーバー名.com」のような形式の場合があります。Xserverの場合は「mysqlXXX.xserver.jp」のような形式です。正確なホスト名はサーバーの管理画面で確認してください。
データベースのサイトURLを確認・修正する
移行前のサイトURLが残っている場合、ログイン後にそのURLへリダイレクト(自動で別のURLへ転送される仕組み)されてしまいます。
phpMyAdminでwp_optionsテーブルを開き、option_nameが「siteurl」と「home」の行の「option_value」を確認します。ここが古いサーバーのURLになっていたら、新しいドメインのURLに変更します。
または、wp-config.phpで一時的に上書きする方法でも対処できます(前述のWP_HOME / WP_SITEURLの追記)。
.htaccessの記述を確認する
WordPressが使う.htaccess(サーバーの動作を制御する設定ファイル)の記述が崩れていると、アクセス自体が通らなくなります。
FTPでWordPressのルートフォルダにある.htaccessを確認し、以下の記述が含まれているか確認してください。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
移行作業中に別の記述が追加されていないか、記述が欠けていないかも確認してください。
問題がある場合は、上記の内容だけに整理してみてください。
PHPバージョンを合わせる
移行元と移行先でPHPのバージョンが異なる場合、古いコードを使っているプラグインやテーマがエラーを起こします。
サーバーのコントロールパネルでPHPバージョンを切り替えられます。Xserverなら「PHP Ver.切替」、ConoHa WINGなら「サイト管理 → 応用設定 → PHP設定」から変更できます。
移行元と同じバージョンに揃えてからログインを試してみてください。
SSL証明書の設定を確認する
新しいサーバーでSSL証明書がまだ反映されていない場合、「https://」でのアクセスが通りません。証明書の反映には最大24〜48時間かかることがあります。
一時的に「http://」でアクセスしてみてください。入れる場合は、SSL証明書の設定が完了してから改めてhttpsに移行してください。
SiteGuardでURLを変更して忘れた・IPで弾かれるとき
こんな人向け: SiteGuardを使っており、ログインURLが見つからない・いつも使えていたのに急にアクセスできなくなった人。
読まなくていい人: SiteGuardを使っていない、またはセキュリティ系プラグインを入れていない人。
SiteGuardはWordPressのログインURLを変更して不正アクセスを防ぐプラグインです。デフォルトのログインURLを使っていると自動攻撃を受けやすいため、このプラグインは有用です。
ただし、URLを変更したまま忘れてしまうとログインできなくなります。
SiteGuardで変更したURLを確認する方法
FTPまたはサーバーのファイルマネージャーで「.htaccess」を開いてください。SiteGuardが設定したURLが記述されています。例えば次のような行があります。
RewriteRule ^login_XXXXXXXX(.*)$ wp-login.php$1 [L]
「login_XXXXXXXX」の部分が変更後のログインURLです。この場合は「https://あなたのドメイン/login_XXXXXXXX」がログインURLになります。
IPアドレスで弾かれているとき
SiteGuardには「ログインページアクセス制限」という機能もあり、決まったIPアドレス以外からのアクセスをブロックできます。
自分のIPアドレスが変わった(出先で作業している、VPNを使っている)場合にブロックされることがあります。
対処法は2つあります。
1つ目は、SiteGuardを一時的に無効化する方法です。FTPでwp-content/plugins/siteguard/のフォルダ名を変更することで無効化できます。ログイン後に設定を見直してください。
2つ目は、サーバーの管理画面からIPアドレス制限を解除する方法です。SiteGuardのIPブロックはWordPress側の設定ですが、サーバー側のアクセス制限(WAF等)が別途かかっている場合は、サーバーの管理画面から確認が必要です。
VPNを使って作業している場合、VPNによって割り当てられたIPが海外のサーバーと同一視され、セキュリティ設定でブロックされることもあります。VPNをオフにして試してみてください。
ログイン試行制限でブロックされているとき
SiteGuardには「ログイン試行制限」の機能もあります。短時間に複数回ログインを失敗するとIPが一時的にブロックされます。
この場合は時間をおいて(30分〜1時間程度)から再試行するか、SiteGuardを一時的に無効化する方法で対処します。
サーバー側のWAFが原因でブロックされているとき
こんな人向け: 何もしていないのにログインページで「403 Forbidden」が出る、または接続が拒否される人。
読まなくていい人: ログインページは表示されており、パスワードエラーやループが起きている人(上のセクションを確認)。
WAFは、正常なアクセスを誤って「攻撃」と判定してブロックすることがあります。特にWordPressの管理画面(wp-admin)へのアクセスは攻撃の標的にもなるため、誤検知が起きやすい箇所です。
エラーが「403 Forbidden」になる場合はWAFが原因のことが多いです。 403エラーについては関連記事「「403 Forbidden」が自分だけ起きたときに確認すること」でも詳しく扱っています。
XserverのWAFを確認する方法
Xserverのサーバーパネルにログインし、「WAF設定」を開きます。
ドメインごとにWAFのオン/オフを切り替えられます。一時的にWAFをオフにして、ログインを試してみてください。ログインできるようであれば、WAFが原因です。
WAFを完全にオフにしたくない場合は、「例外URL設定」でwp-admin/やwp-login.phpを除外することで、管理画面へのアクセスだけWAFを通さないようにできます。
ConoHa WINGのWAFを確認する方法
ConoHa WINGのコントロールパネルから「サイト管理 → サイトセキュリティ → WAF」を開きます。
WAFの有効/無効を切り替えられます。XserverのWAFと同様に、一時的にオフにして確認してください。
phpMyAdminでパスワードを直接書き換える方法
こんな人向け: パスワードリセットのメールが届かず、メールを使わずにパスワードを変更したい人。
読まなくていい人: メールは届いており、パスワードの再設定リンクから操作できている人。
レンタルサーバーの管理画面から「phpMyAdmin」(データベースを直接操作するツール)にアクセスできます。
Xserverの場合は、サーバーパネルの「MySQL」メニューから「phpMyAdmin(ver5.2系)」を開きます。ConoHa WINGの場合は、コントロールパネルの「データベース」から同様にphpMyAdminを開けます。
phpMyAdminを開いたら、使用しているデータベースを選択し、「wp_users」というテーブルを開いてください(テーブル名の頭の「wp_」は、インストール時に変更している場合は別の文字列になっていることがあります)。
ユーザーの一覧が表示されるので、対象のユーザーの行にある「編集」をクリックします。「user_pass」(WordPressがパスワードを保存している項目名)の値を変更したいのですが、ここは暗号化(データを変換して人間には読めない形にした状態)されているため、そのまま書き換えてもパスワードは変わりません。
変更するときは、「関数」の欄で「MD5」(パスワードを特定の方式で変換する機能)を選択してから、新しいパスワードを入力します。これでデータを保存すると、MD5で変換された新しいパスワードが設定されます。なお、WordPressはMD5よりも強い変換方式を使っているため、次回ログイン成功時に自動で変換されます。
この操作に不安を感じる場合は、後述のWP-CLI(上級者向けのコマンド操作ツール)を使う方法か、サーバーのサポートへ問い合わせる方法を選んでください。
よくある質問
パスワードリセットのメールが届かないとき、他に方法はありますか?
メールが届かない場合の対処法は主に2つあります。
1つはphpMyAdminを使ってデータベースを直接操作する方法です。上のセクションで説明した手順でwp_usersテーブルのuser_passを書き換えることで、メールなしでパスワードを変更できます。
もう1つはWP-CLI(上級者向けのコマンド操作ツール)を使う方法です。Xserverなどのサーバーで使える場合があり、「wp user update ユーザー名 –user_pass=新しいパスワード」というコマンドでパスワードを変更できます。
どちらの操作も、間違えるとデータが壊れる可能性があります。不安な場合はサーバーのサポートへ問い合わせることをお勧めします。
ログイン画面が真っ白になって何も表示されないときはどうすればいいですか?
ログイン画面(wp-login.php)が真っ白に表示される場合、PHPのエラーが発生してページが生成できない状態が多いです。
まずPHPのエラーログを確認します。FTPでサーバーのエラーログファイル(多くの場合「error_log」というファイルがWordPressのルートフォルダかサーバーのログフォルダにあります)を開いて、最新のエラー内容を確認してください。
エラーログに「Fatal error」や「Parse error」が含まれていれば、特定のファイルに問題があります。エラーメッセージに書かれたファイル名を確認し、プラグインであれば無効化(FTPでフォルダ名変更)を試してください。
PHPのバージョンが上がったことで発生していることも多いので、サーバーのコントロールパネルでPHPバージョンを確認・変更することも有効です。
管理者ユーザーが削除されているかもしれないのですが、確認する方法はありますか?
phpMyAdminでwp_usersテーブルを開くと、登録されているユーザーの一覧が確認できます。ここに管理者ユーザーが残っているかどうか確認してください。
一覧にはあるがログインできない場合は、wp_usermetaテーブルも確認します。「wp_capabilities」というmeta_keyの行を探し、そのmeta_valueが「a:1:{s:13:”administrator”;b:1;}」のような管理者権限の記述になっているか確認してください。
万が一ユーザーが削除されている場合は、phpMyAdminから新しいユーザーを直接登録することもできますが、操作が複雑です。バックアップからの復元か、サーバーサポートへの問い合わせを検討してください。
SiteGuardを使っていないのにログインURLが見つからない
SiteGuardを使っていない場合でも、別のセキュリティプラグイン(例:Wordfence、All In One WP Security)がログインURLを変更していることがあります。
使っているセキュリティ系プラグインを確認し、FTPでそのプラグインフォルダを一時的にリネームして無効化してから、デフォルトのURL(/wp-login.php)でログインを試してください。
また、.htaccessにリダイレクト設定が残っている場合もあります。FTPで.htaccessの内容を確認し、不審なRewriteRuleがないかチェックしてください。
ログイン後にすぐエラーが出てWordPressが使えないとき
ログインはできたが、管理画面でエラーが多発したり使えない状態の場合は、ログインではなくWordPressそのものの問題です。
よくある原因はプラグインの競合です。全プラグインを一括で無効化(先に説明したFTPでのフォルダ名変更)してから状況が改善するか確認してください。改善した場合は、プラグインを1つずつ有効化して原因を特定します。
それでも解消しない場合は、テーマのエラーや、WordPressのコアファイルが壊れている可能性もあります。wp-adminフォルダとwp-includesフォルダをWordPress公式サイトからダウンロードした同バージョンのファイルで上書きすることで、コアファイルを修復できることがあります。
それでも入れないなら、サーバーそのものを疑っていい
ここまでの対処をすべて試しても入れない場合、WordPress側だけでなくサーバー環境そのものに問題が起きていることがあります。
特にサーバー移行後に問題が続く場合は、移行先のサーバーの設定やスペックが合っていない可能性もあります。使っているサーバーのサポートに連絡して状況を伝えることで、サーバー側の設定問題を確認・解消してもらえることがあります。
また、サーバー自体の乗り換えを検討するきっかけになることもあります。「古いスペックのサーバーを使っている」「サポートの対応が薄くて問い合わせても解決しない」「PHPのバージョン切替やWAFの細かい設定ができない」という状況が重なっている場合は、環境ごと移した方がトラブルが繰り返されにくくなります。
サーバー乗り換えの選択肢と手順については「ConoHa WINGを解約したらブログ・ドメイン・データはどうなる?」で詳しく説明しています。ブログデータを安全に引き継ぐ方法も含めて紹介しているので、行き詰まっているなら参考になります。
関連するエラーとして、ログイン画面へのアクセス自体がブロックされている場合は「「403 Forbidden」が自分だけ起きたときに確認すること」も合わせてご確認ください。
また、管理画面へのアクセス中に「502 Bad Gateway」が出る場合は、サーバーの負荷が原因のケースも多いです。あわせて確認してみてください。
入れなくなっても、たいていは自分で戻せる
WordPressにログインできない原因はいろいろあるけど、確認する順番は決まっている。
まずログインURLが正しいか確認する。次にパスワード・ユーザー名の問題を切り分ける。それでも入れなければ、いつから起きたか(移行後・更新後・プラグイン追加後)で原因を絞る。ログインループはCookieかURLの設定ズレ。プラグインが原因ならFTPで無効化。SiteGuardを使っているならURLをhtaccessで確認する。
この順番で進めると、多くの場合は自分で解決できます。
操作が不安な場合やエラーが何もわからない状態が続く場合は、サーバーのサポートに問い合わせることも役に立ちます。恥ずかしいことではありませんし、サポートを使うためにお金を払っているとも言えます。
今詰まっているだけで、設定が落ち着けばこういうことはなくなります。

コメント