こんにちは。銀河(@ginga_noguchi)です。
お名前.comのレンタルサーバーにおける常時SSL接続化とリダイレクトの設定方法を解説します。主な手順は3ステップです。
- お名前.comでSSL証明書の申請をする
- WordPressの設定を変更する
- .htaccessでリダイレクトを設定する
他のサーバーの場合
必須設定のSSL / TLSって何?その違いとは?
難しい話になるので細かく覚えておく必要はありませんが、SSLとは(Secure Sockets Layer)の略でインターネット通信を安全に行うためのセキュリティのことです。インターネットがこんなに普及する前はセキュリティに対する配慮が少なかったから、専門知識のある第三者が覗こうと思えば覗けてしまう状態だったですよね。(現在も安全とは言い切れません)
その後、特にインターネットが普及してきた1995年あたりにセキュリティ強化のために開発されたのがSSL。難しい話すると長くなるからやておきますが、TLSはその後継だと認識してもらえればOKです。
でもTLSよりもSSLの方が馴染みがあるから、今でもhttps化=SSL化と言ってます。つまりSSLとTLSに違いはありません。
とりあえずURLがhttp://ではなく、https://になっていればSSL / TLS化してる状態ってことですね。
2018年7月から未設定だと警告が出現する?
2018年7月。Googleが提供するブラウザ『Google Chrome』の最新バージョンである68からは「常時SSL化されていないすべてのサイトに対し警告を表示する」という情報がありました。
執筆時(2018年8月10日時点)は僕も、クロームを最新バージョンにアップデートして色々なサイトを見て回りました。「警告」というとかなり深刻な表示をされるかと思いましたが、SSL化されていないサイトでは以下のように表示されます。
URLの頭に「保護されていない通信」と表示されているのがわかりますよね?
常時SSL接続化されているとこのように「保護された通信」と表示されます。
今までは重要なページだけSSL、これからはサイト全体で常時SSL接続
以前までのSSL設定は、サイト全体でおこなうことは少なかったです。
- オンラインショップなどのECサイトで、クレジットカード情報を入力するページ
- 問い合わせフォームなどで個人情報を入力するページ
- パスワードなどを含むログインページ
など、必要箇所を部分的にSSL化してあれば、サイトのトップページやブログ記事ページなんかは必要なかったんですよね。でもこれからは違います。
サイト自体が文字通り「常時」SSL接続していない限り「保護されていない通信」が表示され続けます。ちなみにSSL化の設定は難しくありません。
ただしページ数が多いとそのぶん手間も増えます。ブログ開設当初であればページ数が少ないので、可能な限り早めにやっておいた方がいいです。
つまりこれを読んでいる今
①無料SSLの設定方法
セキュリティの設定ページを開く
コントロールパネルにログインし、画面左のメニューからセキュリティをクリックします。
SSL証明書の申請ページを開く
SSL証明書をクリックします。
設定するドメインを選択して申し込む
SSLの設定をしたいドメインを選択し、申し込むをクリックします。
無料SSLを選択して確認画面へ進む
無料SSLのプランを選択して確認するをクリックします。
内容を確認して申し込む
SSL種別が無料SSLであることと、設定するドメインに間違いがないか確認して完了するをクリックします。
申し込みが完了
これでSSL証明書の申請が完了です。
②WordPressの管理画面からアドレスをSSL化したhttpsに書き換える
【設定】→【一般】をクリック
設定→一般をクリック
アドレスを両方ともhttps://〜に書き換える
- WordPress アドレス(URL)
- サイトアドレス(URL)
ともにhttpの後ろにsを足してhttps://とします。設定を保存をクリックすることを忘れないように注意してください。
「保護されていません」のエラーが解消される
簡単ですよね?ただし、この状態だと
- httpのサイト
- httpsのサイト
の2つが混在してしてしまっている状態です。httpの状態でアクセスされることを避けなければなりませんので、次に「リダイレクト」という設定をおこないます。
③.htaacessでのリダイレクト設定方法
高度な設定の編集ページを開く
再びお名前.comのコントロールパネルに戻り、左メニューから高度な設定をクリックします。
.htaccessの設定ページを開く
.htaccessをクリックします。
設定するドメインを選択して.htaccessの編集ページを開く
SSLの設定をするドメインを選択して「.htaccess」の変更をクリックします。
リダイレクト用のコードを記述して保存する
最初から入っているコードはそのままにしてその下に、以下のコードをコピペして変更するをクリック
これをコピペ
RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
これでSSLの設定は完了です。試しにhttpのURLで自分のサイトにアクセスしてみましょう。
自動的にhttpsに接続されればOKです。