お名前.comのレンタルサーバーでホームページをSSL化する手順

今回、他人様がhtml&cssで作った古めのサイトをSSL化(http→https)する依頼を受けました。

正直、簡単だと思ってたんですよねー。
が、お客さんの使っているお名前.comのレンタルサーバーは、私が普段使ってるサイトとは勝手が違い、何気に苦労しました。
というわけで、次回同じようにお名前.com系の依頼がきた時のための覚書です。

ちなみに、レンタルサーバーのプランは「SD-01プラン」です。
私が契約したんじゃないのでよく分からんのだけどもw

スポンサードサーチ

複数のSSLからこれに決定

お名前.comのレンタルサーバーには、数種類のSSLがあります。
余程セキュリティが必要なサイトでなければLet’s Encryptという無料SSLで十分でしょう。
自分でコントロールパネルから設定できます。
が、その作業をする前に、
やることがあります。
SSL化の説明ページを読むと、

共用サーバーSD指定のネームサーバー情報をご設定いただいている必要がございます。

と書いてあるのです。
ネームサーバーってなんぞやと思う人も、ここは大人しく従いましょう。

ネームサーバー情報設定

お名前.com Naviにログインし、上のメニューバーで「ドメイン」をクリックし、
対象ドメインの「ネームサーバー」のプラン名をクリックします。

お名前.comレンタルサーバー画面

複数のドメインを持っている場合は対象ドメインにチェックを入れてから、
ネームサーバーの選択で一番下の「レンタルサーバー SDプラン、お名前メールのネームサーバーを使う」にチェックを入れ、確認をクリック。
変更確認画面が出ますが、OKクリックすればネームサーバーの設定は完了です。
※「反映完了まで24時間から72時間かかる場合があります」とあるので、SSL化は次のステップは時間を置いてからやりましょう。

スポンサードサーチ

いざ、SSL化してみよう!

コントロールパネルにログイン

お名前.com Naviにログインしているなら、メニューバーの「レンタルサーバー」をクリックし、対象ドメインのコントロールパネルにログインします。

お名前.comのコントロールパネルにログイン

SSL設定へ

Web設定の中の、その名もずばり「SSL設定」をクリック

SSL設定

SSL化したい対象ドメインを選択し、「新規作成」をクリックすれば完了です。

SSL新規作成

うん、ここまでは簡単だったのよ!

301リダイレクトを設定しよう!

さて、SSL化したあと、大切なのがリダイレクト(サイトの転送)。

httpsにしたアドレスを直接打ち込めば、もちろんSSL化したページに飛びますが、とはいえ、現状普通にキーワード等で検索するとhttpサイトしかヒットしません。
なので、httpへのアクセスを、httpsのサイトに自動的に飛ばす(転送する)ことが必要です。

ちなみにリダイレクトには2種類あって、301は恒久的なリダイレクト、302は一時的なリダイレクトに使います。今回の場合は、ずーっとhttpsを表示させたいので、301が適切ですね。

で、それも当然コントロールパネルで簡単に設定できると思ったら…んん?
ヘルプのページを見ると左メニューから「高度な設定」をクリックと書いてありますが、そもそも左にメニューないし…??

めっちゃいろいろクリックしてみたけど、設定が見当たらない…

まさか、自動でリダイレクトしてくれるの?とも考えたけど、サイトに接続してもhttpのままだし。
しかたないので、お客様センターにメールで問い合わせ。

幸いなことに次の日返事がきたのですが、そこに書かれていたのは…

恐縮ではございますが「http」でアクセスをした際に自動的に
「https」へ転送(リダイレクト)する機能は、現状SDプランの
コントロールパネル内に実装いたしておりません。上記設定をいただくためには、サーバー上のドメインのディレクトリ直下に
「.htaccess」と呼ばれるファイルを設置していただき、「https」へ
リダイレクトさせる記述をいただく必要がございます。

※サーバー上に「.htaccess」が,既に存在している場合
リダイレクトをさせる記述の追記が必要でございます。

えー!なんですとー!(● ˃̶͈̀˂̶͈́)⁾⁾
あの「高度な設定」のくだりとか、何だったんねん……
最初から書いといてくれればいいのに、ちょっと不親切よね…
まぁ、方法がわかっただけ良かった。
てなわけで、テキストツール(私はsubline Text使ってます)で「.htaccess」ファイルを作り、中身に下記を記述。
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
こうして作成した.htaccessファイルを、FFTPなどを使ってindex.htmlなんかが入ってる階層に入れれば、これで301リダイレクト完成です。たとえhttpから始まるアドレスをクリックしても、自動的にhttpsのサイトに飛ばしてくれます。
ちなみに「.」で始まるファイルは隠しファイルなので、パソコンの設定がデフォルトのままだと見えません。
最近のOSだったら、「command + shift + .」で可視化されます。
あとはGoogleサーチコンソールなんかにSSL化したURLを登録したり、sitemapを新しく登録したりと、やるべきことは細々とあるのですが、他に解説してるサイトがたくさんあるので、私はとりあえずここまで。
備忘録でした✨