さくらサーバーの無料SSLでAOSSL(常時SSL)を設定する方法
スマートフォンやタブレットの普及に伴い、wi-fi環境が広く整備されてきました。そのため、公衆無線LANを利用したデータ通信が増え、データを盗み見される危険性が高くなってきました。そのため、メールフォーム等だけではなく、常にデータを暗号化する必要性が出てきました。
Contents
AOSSLの必要性
AOSSLはセキュリティの面だけではなく、SEOにも効果が期待できるので、今後のWEB制作には必要不可欠と考えられます。
以前はSSLの導入には有料のSSLを取得する必要や、設定が困難であったため、共用SSLなどを用いていた方も多いかと思います。
さくらインターネットでは2017年10月より、「さくらのレンタルサーバ」「さくらのマネージドサーバ」において無料のSSLサーバー証明書「Let’s Encrypt」を設定できるようになりました。コントロールパネルより簡単に設定できますので是非ご活用ください。
設定方法
コントロールパネルの左下にある「ドメイン/SSL設定」をクリック。
該当ドメインの証明書の項目の「登録」をクリック。
「無料SSLの設定へ進む」をクリック。
発行手続き中に移行します。「発行には数十分〜数時間かかる場合があります」と表示されましたが私の場合1時間以内には反映されました。発行が完了すると「[さくらインターネット]SSLサーバ証明書発行のお知らせ」というメールが届きます。
URLを「https://」にして表示を確認しましょう。問題なく表示されれば設定完了です。
ただしこれだけでは「http://」のアクセスした場合でも表示されてしまいますので、「http://」にアクセスしてきた際に「https://」にジャンプさせる設定が必要になります。
ジャンプさせるには下記の「.htaccess」をサイトルートに保存してください。
RewriteEngine On RewriteCond %{ENV:HTTPS} !^on$ RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$ RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
AOSSLにした際に発生しがちなトラブル対処方法
AOSSLにするとJavascriptが動かなくなったり、画像が表示されないなんてことが起きることがあります。
これはjQueryなどのファイルを外部のCDN(Content Delivery Network)を使用している際に、「https://」ではなく「http://」のリンクを貼っていると生じます。表示がおかしいと感じた場合は各リンクが「https://」になっていか確認を行いましょう。
悪い例
<script src="http://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
良い例
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
ついでにやっておきたいドメイン設定
ついでなので「WWW」あり・なしを統一してしまいましょう。
wwwありに統一する場合
RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
wwwなしに統一する場合
RewriteCond %{HTTP_HOST} ^www\.deco8\.net RewriteRule (.*) https://deco8.net/$1 [R=301,L]
WORDPRESSを使用している場合
WORDPRESSをご利用の方は『さくらのレンタルサーバ 簡単SSL化プラグイン』で設定可能です。
まだAOSSLの設定を行っていないサイトは是非AOSSL化することをお勧めします。