WordPressサイトをSSL化してURLを統一する方法

Server

この記事では、前回エックスサーバーにインストールを済ませたワードプレスでのサイトのセキュリティ向上のためのSSL化とURLの正規を実装する手順を書いた記事となります。

*新着記事を作成、固定ページの作成を行う前に必ず今回のSSL化を済ませることをおすすめします。

SSLとは?

SSLとは、簡単に説明すると、httpsの『s』の部分を示し、公衆無線LANなどの通信を行なった際に、重要なパスワードやクレジット情報などのhttp通信を暗号化し外部に漏れる事を防ぐ事ができるセキュリティ面向上のための重要なプロトコルです。

以下引用

HTTP通信において認証や暗号化を行うために、ネットスケープコミュニケーションズによって開発された。当初、World Wide Web上での個人情報の送信や電子決済など、セキュリティが重要となる通信で使用されるようになった。その後、公衆無線LANの普及やPRISMによる大規模な盗聴ネット検閲への対抗などを要因として、あらゆるHTTP通信をHTTPSに置き換える動きが活発になっている[1][2][3]
HTTPSは、メッセージを平文のままで送受信する標準のHTTPと異なり、SSL/TLSプロトコルを用いて、サーバの認証・通信内容の暗号化改竄検出などを行う。これによって、なりすまし中間者攻撃盗聴などの攻撃を防ぐことができる。HTTPSでは、ウェルノウンポート番号として443が使われる。
HTTPSによるセキュリティ保護の強度は、Webサーバやブラウザで用いられるSSL/TLSの実装の正確性や、使用する暗号アルゴリズムに依存する(TLSを参照)。
プロキシサーバを介してインターネットにアクセスする場合、HTTPSのSSL/TLS通信時にプロキシサーバをトンネリングする必要がある場合がある。その場合はCONNECTメソッドを使用する。

https://ja.wikipedia.org/wiki/HTTPS

また2018年の7月からSSL化の対応がされていないサイトではウェブブラウザのHTTPのバーに『保護されていません』の警告文が記述されるようになり、ユーザーからしても不快なサイトだと思われ離脱率の増加に繋がり、大きな機会損失となるので早急に対応をすべきでしょう。

Safariの場合上記のように表示される。

SSL化のやり方

当サイトをご覧になっている方はエックスサーバーに登録をし、ワードプレスをインストールしているかと思いますので今回は、それらに対応したやり方をご説明致します。

エックスサーバーでの設定

[1]エックスサーバー の『サーバーパネル』へログインし、右上の『SSL設定』へアクセス。(写真1)

(写真1)

[2]SSL化したいドメインを選択し『独自SSL設定追加』から指定したドメインのにSSLを追加する。(写真2)

(写真2)

*SSL化が反映されるまで最大1時間ほどかかります。(写真3)設定後すぐには一度サイトが表示されなくなりますが、焦らずゆっくり作業しましょう。(写真4)

(写真3)
(写真4)

ワードプレスでの設定

[1]WordPressにログインし『一般設定』の『サイトアドレス(URL)』のhttp:の部分に『s』を付け加え『https:』に書き換えます。(写真5)

(写真5)

*ここで超重要なのは、『サイトアドレス(URL)』のみ書き換えてください。その上の欄にある『WordPressアドレス(URL)』を書き換えるとWordPressの管理画面にすら入れなくなり、編集不可能になります。(『WordPressアドレス(URL)』は最後に変えます。)

常時SSL(URL正規化)

サイトは通常『https://』から始まるURLと『https://www.』から始まるURLなどと複数のURLが自動で作成されます。

さらに今回SSL設定をした『https://』から始まるURLと、同時に作られた『https://www.』から始まるURLも混在し始めます。

これら複数のURLはユーザーから見れば全て同じサイトとなるが、グーグル検索ロボットからしたら全くの別サイトとして認識されてしまいます。

しかも別サイトなのに、内容は全て同じ(同じ内容のサイトは二つもいらない)と認識されSEO上不利益な要素となってしまいます。

そのため対策として、分散したURL全てを今回設定した『https://』の一つのサイトにまとめる必要があります。これを『URLの正規化』と言います。また『http://』のページがある場合『https://』のページへ誘導するため『常時SSL化』とも言います。

次に実際にURLの正規化の手順をご説明致します。

URLの正規化のやり方

[1]エックスサーバーの『サーバーパネル』から『.htaccess編集』へアクセス。(写真6)

(写真6)

[2]URLの正規化したいドメインを選択し『.htaccess編集』へ。

[3].htaccess編集に下記載の内容を記述。(コピペ)(見本/写真7)

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.jp/$1 [R=301,L]
RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule ^(.*)index.html$ https://example.jp/$1 [R=301,L]
</IfModule>

*『example.jp』はご自分のドメイン名に置き換えてください。

(写真7)

*上記のテキストはhttps以外にアクセスしたユーザーは全てhttpsに301リダイレクト(入れ替えるみたいな)するという意味です。

[4]下記のように南京錠マークが付いたら成功。(写真8)

(写真8)

*SSL化をして1時間を経たずしてここまで進めると下の写真のようなエラーになるが時間が経てば解除されるので安心してください。(写真9)

(写真9)

[5]最後に『WordPressアドレス(URL)』を『https』に書き換えて、WordPressの管理画面SSL化したら終了です。

*より詳しく、もしくはエックスサーバー以外(FTPを使用してのhtaccess)の記述方法を知りたい方は以下からお願いいたしします。


以上が「WordPressサイトを全てSSL化しURLを統一する方法」でした。

プログラム関連を弄るため、アフィリエイトやサイト作成での最初の難関ポイントですが、理解際すれば実は物凄く簡単な要素です。最初は失敗してなんぼの世界なので、あまり難しく考えずとりあえず実行してみましょう。

次(他の)の作業は下記の記事から

2019年4月24日ServerApache,Backend,WEB

Posted by KT