常時SSLのリダイレクト処理。どうなるLet’s Encrypt問題

google検索エンジンの推奨等により、SSL化が進んできたためSSL化済みのホームページも多いかと思います。とはゆえホームページ制作会社で働いていると、まだまだホームページのSSL化対応を行うことも多いです。

この記事ではSSL化を行った際の処理、また、現在、起こっているLet’s Encrypt問題について少し触れたいと思います。

この記事は「2020年12月15日」に書かれた記事です

  1. SSLの設定
  2. 常時SSL化のリダイレクト処理について
  3. どうなるLet’s Encrypt問題

1.SSLの設定

リダイレクト処理の前に少しだけSSLの設定について触れておきたいと思います。

SSLには大きく分けて「有料SSL」と「無料SSL」とがあります。「有料SSL」の代表的なものには下記のものがあります。※このほかにもたくさんあります。

  • グローバルサイン クイック認証SSL
  • ラピッドSSL
  • ジオトラスト
  • デジサート
  • グローバルサイン
  • セコム

サーバーによって提携しているSSLが異なりますが、サーバーとは別にSSLを取得して持ち込むこともできます(※一部持ち込み出来ないサーバーもあります)

無料SSLの代表格は「Let’s Encrypt」です。

Zenlogicサーバーなどでは独自の無料SSLを用意していますが、無料SSLといわれるものは「Let’s Encrypt」であることが多いです。

このサイトのSSL証明書もLet’s Encryptです。

2.常時SSL化のリダイレクト処理について

SSLの設定

大前提としてSSL化の際は、ホームページ内のすべての記述をhttps:// に変更します。

外部リンクなどのURLは基本的には変更しません。変更が必要なのは

  • 自社(SSL化したホームページ)のドメインURLとなります。
  • 全体が相対パスで設定されいている場合は、SSLの設定とリダイレクト処理のみで完了します。
  • CMSの場合は、必ず設定の変更が必要です。たとえばWordpressの場合は設定画面でURLを変更、またはデータベース上で変更します。

SSLの設定が完了したら、リダイレクトを設定しましょう

SSLのリダイレクトは、http:// でアクセスがあった際に、http:// に遷移させる処理となります。
「3-4 ドメインの「www」ってなんだっけ? wwwありなし統一」でも触れましたが、検索エンジンの解釈ではhttp:// と https://は別ページ扱いになってしまうため、必ず設定しておきます。

ロリッポップでのSSLリダイレクト処理

https://lolipop.jp/manual/hp/htaccess-08/

#SSLリダイレクト
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

ロリポップの中でもマネージドクラウドを使用している場合は、設定が異なります。

常時SSL(常時HTTPS)の設定方法 (PHP/WordPressプロジェクトの場合)

https://support.mc.lolipop.jp/hc/ja/articles/360022766733-常時SSL-常時HTTPS-の設定方法-PHP-WordPressプロジェクトの場合-

#SSLリダイレクト マネージドクラウド
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

RewriteEngine Onは、すでに書いていたら必要ありません。(「3-3  .htaccess(ドットエイチティアクセス)ってなに?
wordpressを利用している場合

リダイレクト処理などの記述は、下記の部分よりも上に書きましょう。

# BEGIN WordPress
中身省略
# END WordPress

万が一、「中身省略」と書いてある「# BEGIN WordPress」と「# END WordPress」の間に書いてまうとwordpressの動作で消されてしまいます。

さくらインターネットの場合

https://help.sakura.ad.jp/206054622/

#SSLリダイレクト
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

エックスサーバーの場合

https://www.xserver.ne.jp/manual/man_server_fullssl.php

#SSLリダイレクト
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

3.どうなるLet’s Encrypt問題

すべてというわけではありませんが、無料SSLを利用している場合「Let’s Encrypt」を使用していることが多いです。現在、問題になっているのは、2021年3月以降「Let’s Encrypt」がAndroid 7.1以前の端末で使えなるということです。

代替処理などを施し、各サーバーでは6月または9月ころまで延命処置がとられるようです。

さくらインターネット 延命 2021年6月頃まで
ロリポップ 延命 2021年6月頃まで
エックスサーバー 延命 2021年9月29日まで
Zenlogic 延命なし。「標準独自SSL」への移行を奨励。

※変更がないとも限りません。必ずの変更を確認にしてください

このサイトも「Let’s Encrypt」を利用しているので、2021年6月以降、下記の選択をしなければなりません。

  • Android 7.1での表示をあきらめる
  • 「Let’s Encrypt」以外の無料SSLがある別サーバーに移転させる
  • 比較的費用の安いSSLを購入して設定する
  • サーバーによる代替処理を待ち続ける(出てほしいという希望です)

SSLをやめるという選択肢は、googleがSSLを推奨している以上ありません。このサイトでは各サーバーの動向を見て方向性を決めたいと考えています。何か進展があれば追記報告をしたいと思います。

松江ブログ(M2エムツー)

HOME > ホームページ制作 > 初心者のためのホームページ制作 > 常時SSLのリダイレクト処理。どうなるLet’s Encrypt問題

ページトップへ