WordPress の HTTPS 化

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、画像などの混合コンテンツを使用する。

参考文献と役立つリンク

  1. Why should I use HTTPS
  2. Let’s Encrypt and Certbot
  3. Apache Module mod_ssl – Apache モジュールの公式ドキュメント
  4. Encrypting the Web (EFF.org)
  5. HTTPS as a ranking signal (Google)
  6. Best Practices Securing Your Site (Google)

この記事は役に立ちましたか ? どうすればさらに改善できますか ?