WordPress の HTTPS 化入門
HTTPS を実現するためには、サーバーにSSL証明書をインストールする必要があります。
Let’s Encrypt はすべての人に無料の SSL 証明書を提供する非営利団体で、2020 年 2 月の時点で 10 億を超える証明書を発行しました。証明書を取得する最も簡単な方法は、EFF certbot tool を使用することです。そのサイトには、いくつかの異なる Web サーバーとオペレーティング システムの証明書をインストールおよび更新するための完全な手順が記載されています。
ローカル開発の場合、OpenSSL を使用して自己署名証明書を作成できますが、生成された証明書は他の人から信頼されないため、使用は限定されており、プライベート サーバーにのみ使用する必要があります。
HTTPS の Web サーバー レベルでは、WordPress に特に必要な追加または特別な設定はありません。 Web サーバーが適切に設定されていれば、WordPress はデフォルトで HTTPS の URL を使用できるようになります。
HTTP URL のデフォルトポートは 80番、HTTPS のデフォルトポートは 443番 です。これらのポートは、ネットワーク・ファイアウォールを介して開かないようにしてください。 Apache には mod_ssl モジュールが含まれており、これを有効にして適切に設定する必要があります。Certbot を使用している場合は、必要な VirtualHost 設定を自動的に設定し、作成できます。
WordPressにHTTPSを導入する
WordPress に HTTPS サポートを実装する場合は、WordPress アドレスとサイトアドレスの URL を httpsに設定するだけです。 WordPress をインストールするには、HTTP または HTTPS のいずれかを使用して開始できます。どちらも機能し、後で切り替えることもできます。
[設定] > [一般] に移動し、WordPress アドレス (URL) とサイト アドレス (URL) が https であることを確認します。そうでない場合は、http の後に「s」を追加し、https にして保存します。

サイトヘルス ([ツール] > [サイトヘルス]) は、Web サイトが HTTPS を使用していないことを通知します。

バージョン5.7以降、SSL証明書がすでにサーバーに設定されている場合、WordPress は自動的に HTTPSに切り替えることもできます。

WordPressのHTTPS化ベストプラクティス
すべての本番WordPressサイトでは、HTTPS を使用することをおすすめします。
- 信頼できる Web ホストを利用する。ほとんどの Web ホストでは HTTPS サービスを標準で提供している。
- Let’s Encrypt の SSL 証明書を利用する。無料で使いやすい。
- SSL 対応 CDN から静的コンテンツを配信する。
HTTP トラフィックを HTTPS サイトにリダイレクトする必要があるかもしれません。 Apache の場合は、例えば VirtualHost エントリを2つ作成することで可能です:
<VirtualHost *:80>
ServerName mkaz.blog
Redirect / https://mkaz.blog/
</VirtualHost>
<VirtualHost *:443>
ServerName mkaz.blog
DocumentRoot /home/mkaz/sites/mkaz.blog
<Directory /home/mkaz/sites/mkaz.blog>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/mkaz.blog/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/mkaz.blog/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/mkaz.blog/fullchain.pem
IncludeOptional /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
WordPressのHTTPS化のバッドプラクティス
- HTTPS と HTTP URL の両方からサイトを提供する場合は、HTTPS を使用してリダイレクトする。
- HTTPS ページで、HTTP から提供される CSS、JS、画像などの混合コンテンツを使用する。
参考文献と役立つリンク
- Why should I use HTTPS
- Let’s Encrypt and Certbot
- Apache Module mod_ssl – Apache モジュールの公式ドキュメント
- Encrypting the Web (EFF.org)
- HTTPS as a ranking signal (Google)
- Best Practices Securing Your Site (Google)
この記事は役に立ちましたか ? どうすればさらに改善できますか ?
フィードバックを送信するにはログインする必要があります。