httpからhttpsにURLを変更する方法(さくらのレンタルサーバー環境)

こんにちは!
管理人のひでまるノートです。

今回は、さくらのレンタルサーバーを利用しているドメインのURLをhttpからhttpsに変更したお話をまとめています。

GoogleがChromeでSSLに対応していないサイトに「Not secure(保護されていません)」と表示するのが刻々と近づいてきていますよね・・・
検索順位にも影響するのか気になるところ・・・

と不安になっている方の参考になればと思います。

さくらのレンタルサーバーを利用している方であれば無料で移行できます。

2017年10月17日より、さくらのレンタルサーバーで、「Let’s Encrypt(レッツエンクリプト)」のSSLサーバー証明書が簡単に発行できるサービスがはじまりました。
Let’s Encrypt(レッツエンクリプト)は独自ドメインがあれば誰でも発行できる無料のSSLサーバー証明書です。

詳しくは、こちらをチェックしてください。

それでは、移行方法について紹介していきますね。
移行作業を開始する前に、必ずバックアップを作成してくださいね。

ステップ1:さくらのレンタルサーバーの管理画面でSSL設定を行う

まず最初に、さくらのレンタルサーバーのコントロールパネルにログインし、SSLサーバー証明書の発行をしていきます。

下の手順で、SSLサーバー証明書の発行を設定していきます。

コントロールパネルからログインし、ドメイン一覧から証明書を設定したいドメインを選びます。

下の図のように、設定するドメインを選択し、赤枠の登録からすすめてください。

下の図のように、「無料SSLの設定へ進む」をおして、手続きをすすめてください。

下の図のように、「無料SSLを設定」ボタンを押して設定完了です。

私の場合は、設定後、30分以内で、https://のURLにアクセスできるようになっていました。

下の図のように、「保護された通信」https://と表示されるようになったら、次の手順に進みます。

ステップ2:Wordpressの管理画面でサイトアイドレス(URL)を変更する

WordPressの管理画面(ダッシュボード)にログインして、⇒ 「設定」 ⇒ 「一般」をクリックしてください。

下の図のように「WordPressアドレス(URL)」、「サイトアドレス(URL)」の「http」部分を「https」に変更していきます。

変更前

変更後

ステップ3:内部リンクや画像URLをhttpsに置換する

ステップ2までの手順で、URLはhttpからhtppsに移行できています。
しかし、記事内の「内部リンク」や「画像のURL」はhttpのままです。

そのため、httpsに全て置換する必要があります。

えっ!全て対応するの・・・

と思った方、安心してください。
Search Regexをいうプラグインを使うと、簡単に置換することができます。

Search Regexをインストール後、

下の図のように、ツールからSearch Regexを選択してください。

下の図のように、「Search pattern」にSSL化する前のhttpのURL、「Replace pattern」にSSL化した後のhttpsのURLを入力ししてください。

そして、OKであれば、「Replace」をおしてください。

すると、下の図のように「Results」と置換する一覧が表示されてきます。

ちょっとみにくいですが、赤色のマークがついている個所がSearch Regexで置換してくれるURLです。

置換するURLに問題がないようであれば、下の図のように「Replace & Save」をおしてください。

ステップ4:httpからhttpsへの301リダイレクトを設定する

さくらのレンタルサーバーの場合は、多くのサイトで明記されている「mod_rewrite」を使ったURL書き換えはできません。

詳しくは、さくらのレンタルサーバーのページをチェックしてみてください。

「さくらのレンタルサーバ」にて提供しているウェブサーバ (Apache) は、
80番ポートを使用するものと、443番ポートを使用するものとの 2種類に分けられます。
一般的に、80番ポートは「http://」、443番ポートは「https://」という形式でアクセスされ、
「https://」についてはプロクシとして動作します。
そのため、同じディレクトリへのアクセスであっても、その際に呼び出されるウェブサーバ が異なると、
CGIプログラムやウェブサーバが.htaccessなどのファイルを読み込む際、挙動に違いが生じます。
例えば、HTTPとしてアクセスした場合はお手元のコンピュータが、
HTTPSとしてアクセスした場合はサーバそのものがアクセス元となります。

こちらでは、具体的な記述方法を明記していきますね。

具体的には、「.htaccess」ファイルと「wp-config.php」ファイルに下のコードを追記していきます。

「.htaccess」への追記

「.htaccess」の先頭に下のコードを追記します。
「ドメイン」のところにドメイン名を入れてくださいね。

RewriteEngine On
RewriteCond %{HTTP:X-Sakura-Forwarded-For} ^$
RewriteRule ^(.*)$ https://ドメイン/$1 [R=301,L]

「wp-config.php」への追記

「wp-config.php」の中に書き下のコードを追記します。
「ドメイン」のところにドメイン名を入れてくださいね。

if( isset($_SERVER[‘HTTP_X_SAKURA_FORWARDED_FOR’]) ) {
$_SERVER[‘HTTPS’] = ‘on’;
$_ENV[‘HTTPS’] = ‘on’;
$_SERVER[‘HTTP_HOST’] = ‘ドメイン’;
$_SERVER[‘SERVER_NAME’] = ‘ドメイン’;
$_ENV[‘HTTP_HOST’] = ‘ドメイン’;
$_ENV[‘SERVER_NAME’] = ‘ドメイン’;
}

そうすると、URLがhttpからhttpsにリダイレクトされ、SSL対応が完了します。

まとめ

いかがでしたか?
さくらのレンタルサーバーの場合は、httpからhttpsへURLを301リダイレクトする設定が少し複雑で混乱してしまうかもしれません。
しかし、「.htaccess」と「wp-config.php」ファイルの2つにしっかりとコードを記述すれば、対応することができます。

今回紹介したように、さくらのレンタルサーバーでは、無料かつ簡単にSSLサーバー証明書を発行することができます。
遅かれ早かれSSL対応はしていかないといけませんので、早めにhttpsへとURLを切り替えていきましょうね。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください