WordPressのHTTPS化の確認|サイトアドレスとFORCE_SSL_ADMIN

WordPressでHTTPSが使えているかは、管理画面の「ツール」→「サイトヘルス」にある「HTTPS ステータス」で確かめられます。HTTPSで開けるようにしただけでは足りず、「WordPress アドレス (URL)」と「サイトアドレス (URL)」が https で始まっている必要があります。WordPressは、HTTPSでの接続かどうかを、サーバーが渡す情報で判断しています。

この記事では、WordPress 7.1.2 のソースコードと日本語の画面表記、公式ドキュメントにもとづいて、HTTPSの確認と切り替えの手順、FORCE_SSL_ADMIN、リバースプロキシで起きる問題をまとめます。

(確認:WordPress 7.1.2 のソースコード wp-includes/load.php、日本語の翻訳ファイル、WordPress公式ドキュメント Advanced Administration Handbook「HTTPS」。日本語は筆者の訳です。確認日:2026年10月6日)

まず、今の状態を確かめる

「ツール」→「サイトヘルス」→「ステータス」に、次のような項目が出ます。

表示(日本語) 意味
サイトは有効な HTTPS 接続を使用しています 問題なし
サイトで HTTPS を使用していません HTTPSの設定が無い。サーバー側の準備(証明書)が必要
このサイトに HTTPS を使用してアクセスしていますが、WordPress アドレスとサイトアドレスはデフォルトでは HTTPS を使用するとして設定されていません HTTPSは使えるが、WordPressの登録のURLが http のまま

最後の表示が出る場合は、サイトヘルスに「サイトを更新して、HTTPS を使用する」というボタンが出ることがあります。WordPressがHTTPSに対応できると判断した時に、サイトのURLを https に切り替えます(切り替えに失敗すると「サイト URL を HTTPS に切り替えできませんでした。」と出ます)。「現時点でサイトでは HTTPS がサポートされていないようです。」と出る場合は、Web ホストの管理者に相談するよう案内されます。

URLを手で直す場合

  1. 先にバックアップを取る(WordPressのバックアップ)
  2. サーバーの管理画面で、無料のSSL(証明書)を有効にする。契約しているサーバーで、使えるかは契約前に確認する
  3. 「設定」→「一般」で、「WordPress アドレス (URL)」と「サイトアドレス (URL)」を https:// に変える
  4. 保存して、再ログインする。サイトのトップ・投稿・管理画面が表示されるかを確かめる

http で開いた時に、https へ自動で飛ばす設定(リダイレクト)は、サーバーの管理画面の機能や、.htaccess で行います。方法は、サーバー会社の案内に従ってください。

WordPressはHTTPSをどう判断しているか

WordPressの is_ssl() という関数は、次のどちらかの時に「HTTPS」と判断します(ソースで確認)。

  • サーバーが渡す HTTPS の値が on または 1
  • HTTPS の値が無く、接続のポートが 443

このため、サーバーの手前にリバースプロキシ(外からのアクセスを中継する仕組み)があり、中継した先のWordPressへは http で届く構成だと、WordPressは「HTTPSではない」と判断します。公式ドキュメントには、この場合、FORCE_SSL_ADMIN などを設定すると終わらないリダイレクトの繰り返しになることがあり、HTTP_X_FORWARDED_PROTO のヘッダーを見て、$_SERVER['HTTPS'] = 'on'; と設定する例が載っています。設定の例とプロキシの設定は、公式の「HTTPS」のページで確認してください。

管理画面をHTTPSに限定する:FORCE_SSL_ADMIN

公式ドキュメントによると、wp-config.php に次のように書くと、すべてのログインと管理画面のセッションをHTTPSにできます。

define( 'FORCE_SSL_ADMIN', true );

この設定は、サーバーでSSLが使える状態になってから書きます。先に書くと、管理画面へ入れなくなることがあります。FORCE_SSL_LOGIN は4.0で非推奨です。wp-config.php の編集の注意はwp-config.phpの主な設定にまとめています。

HTTPSが無いと使えない機能

まとめ

  • 「サイトヘルス」の「HTTPS ステータス」で確認する。WordPress アドレスとサイトアドレスを https にそろえる
  • WordPressは、HTTPS の値が on/1、またはポート443でHTTPSと判断する。リバースプロキシがあると、見落とされやすい
  • FORCE_SSL_ADMIN は、SSLが使える状態になってから書く。先にバックアップを取る

本記事は設定の説明です。SSLの有効化や転送の設定は、サーバー会社の案内に従ってください。