
仕事柄ウェブサイト立ち上げ時にインフラの要件定義を行う。
ウェブ屋としてはウェブサイトの基盤となるインフラ設計は重要なので色々と言わせていただくのだが、その中でも重要になるのウェブサイトのセキュリティについてだ。
一般的に言われる「http」と「https」での運用方法について。
今回は「http」と「https」の違い、そして「https」に切り替えないといけないのか?
という質問に答えようと思う。
「http」と「https」に求められているSEO条件
まずウェブ業界のドンことGoogleさんはインターネットセキュリティを最優先事項として考えていると発表したのが事の発端だ。
少し前の発表だがこちらのアナウンスの一部を抜粋する。
また、ますます多くのウェブマスターが HTTPS(HTTP over TLS / Transport Layer Security)を彼らのサイトに導入するようになってきています。これはとても心強いことです。
こうした理由から、Google では過去数か月にわたり、Google のランキング アルゴリズムでのシグナルとして、暗号化された安全な接続をサイトで使用しているかを考慮に入れたテストを実施してきました。この実験ではよい結果が得られているため、ユーザーがもっと安全にサイトを閲覧できるよう、すべてのサイト所有者の皆様に HTTP から HTTPS への切り替えをおすすめしたいと考えています。
この様にGoogleが公言しているので当然「https」に切り替えるワケだ。
ただこの動きが起こった後に「別にhttp」でもいいのでは?
という意見もあったりして混同するだろう。
特にウェブサイトのSEOに影響があると言われているセキュリティ面を考慮するのであれば「https」にはしておきたいところ。
だが「http」と「https」の違いは何なのか?が、わかっていなければその効果は薄い。
結論から言えば「http」だからSEOが悪い訳ではなさそうである。(2018年9月現在)
なぜなら有名ウェブサイトであっても「http」でウェブサイトを運営しているサイトはまだまだたくさんある。
それらのウェブサイトはもちろん現在でも検索にも強いのだ。
では「https」にする必要はないのか?
それはそれで違うと思われる。
そこで「http」と「https」の違いと移行の手順をここに書き残す。
「http」と「https」の違い
まず「http」と「https」とは何か。
これをIT用語でいうと「プロトコル」と呼ばれるものになる。
一般的に説明すると「綱渡し役」と呼ぶのが良いだろう。
「http」は自身のパソコンとインターネット上のウェブサーバーとの「綱渡し」をしていると思ってもらえれば良いかと。
「https」も役目は同じである。
では何が違うのか。
それは略称を正式名称で表せば簡単に理解できる。
「http」は「Hypertext Transfer Protocol」が正式名称だ。
「https」は「Hypertext Transfer Protocol Secure」が正式名称だ。
つまり「「https」は「http」に比べてより「Secure(安全)」な綱渡しを行いますよ」というだけの違いだ。
「より安全なら最初っから「https」だけでいいじゃないか」
となりそうだが、これはインターネットの時代が変わっていることを示す意味になる。
つまり時代に沿ってセキュリティ面が進化した過程である。
現に「https」で表示するウェブサイトは古いブラウザからは閲覧できない。
そう考えると現時点で「http」か「https」を選択できるのであれば迷わず「https」を選択するのが時代に沿っている。
「http」から「https」への移行方法と設定方法
次に「http」から「https」への移行方法や設定方法について。
まずは「https」へ設定する作業から。
「https」を設定する場合「SSL化」と呼ばれる手順を踏む。
「SSL化」とまた新しい単語が出現したのでここで補足を加えておこう。
「Secure Socket Layer」の略で、WebサーバとWebクライアント(ブラウザ等)やメールサーバとメールクライアント(メーラー等)等の通信を安全に保つための通信手段。主に3つの機能を有しており「通信内容を秘匿する暗号機能」と「通信相手の真正性」「通信データが改ざんされていないか検知する機能」が該当する。
つまり「SSL化」とは通信データのセキュリティをより強化することだ。
「SSL化」の作業は一昔までは有料サービスだったが現在は多くのレンタルサーバーが無料でサービスを提供してくれている。
(ロリポップの画面)
(サクラサーバーの画面)
(エックスサーバーの画面)
有料で「SSL化」するサービスもあるが無料でできるので無料で良い。
手順は各レンタルサーバーコントロールパネルで提供されている「SSL化」の手順を行うだけだ。
「SSL化」とはウェブサイトにセキュリティ証明書を発行することである。
ドメインごとに証明書を発行するのでサブドメインや複数ドメインを運用しているのであればそれぞれ対応する必要がある。
「SSL化」が完了するとプロトコルは「https」となりセキュリティの確保されたウェブサイトと認識されるようになる。
「https」へウェブサイトを移行する
では「SSL化」も完了したのでこれでお終い。
という訳ではなく、まだ作業は残っている。
仕上げの手順は2つある。
WordPressのURL設定変更
まずはWordpressのURLの設定変更を行う。
WordPressのダッシュボードより「設定」→「一般」を選択する。
「WordPress アドレス (URL)」と「サイトアドレス (URL)」という2つのURLを入力する項目がある。
これらを変更しなければならない。
変更は単純で「http://〜」となっているところを「https://〜」に変換するだけだ。
「.htaccess」ファイルの矛先を変更する
ステップの2つ目は「.htaccess」ファイルの矛先を変更する。
「SSL化」することでウェブサイトは「http」と「https」の双方が存在することになった。
そして面倒なのが依然として「http」へアクセスすることが可能ということだ。
このアクセスは今後サイトのアクセス分析を行う上で損失になり兼ねない。
そこで「http」のサイトへアクセスした際は閲覧するページを「https」へ変更するように対応する必要がある。
FTPツールでウェブサーバーへ接続する。
ドメイン配下のトップディレクトリに存在する「.htaccess」ファイルを編集する必要がある。
該当のファイルを一旦、自身のパソコンへダウンロードして作業を行う。
※「.htaccess」ファイルは非常に重要なファイルなので万が一のために必ずバックアップを取得しておこう。
ここでMacbookユーザーは追加作業がある。
Windowsでは「.」から始まるファイルを認識できるがMacbookでは「.」から始めるファイルを初期状態では認識しない。
そこでコマンドを使って「.」から始まるファイルを表示させる必要がある。
Macbookのターミナルを開き次のコマンドを実行する。
defaults write com.apple.finder AppleShowAllFiles true
killall Finder
すると「.」から始まるファイルがMacbookでも表示されるようになる。
もし初めてこのコマンドを実行したのなら、予想以上に多い「.」ファイルの存在に驚くだろう。
ここで目的の「.htaccess」ファイルを開く。
ファイルの先頭に次のコードを入力する。
そしてファイルを保存後、再度FTPツールを使用してウェブサーバーへアクセスする。
ドメイン配下のディレクトリに「.htaccess」ファイルを格納する。
上書きして保存すれば良い。
これにて作業は全て完了する。
作業が完了したら「.」から始まるファイルは重要なので非表示に戻しておこう。
非表示にするには次のコマンドをターミナルから実行すれば良い。
defaults write com.apple.finder AppleShowAllFiles false
killall Finder
以上、全ての設定完了。
晴れてあなたも「https」ドメインの運用者となった訳だ。
ところでセキュリティの問題は常に付きまとうものである。
そのうち「https」も脆弱性をつかれるようになるだろう。
そうなると「httpss」が登場するかもしれないな。
今日も良い1日を。
[…] 【SEO】「http」から「https」に切り替えた方が本当にいいの? […]