
http://とhttps://で始まるURLがあるのは困るぅ。
今回はこういうお悩みに添いたいと思います。
例えば、「http://www.sample.com」をSSL化すると、「https://www.sample.com」のURLができて、「http://www.sample.com」と「https://www.sample.com」の2つのホームページが存在するようになります。
今回は常時SSL化する方法その2です。今回はサイトのSSL設定が済んでhttps化した状態の続きの説明になります。
さくらインターネットではwwwの注意事項があり、少しややこしいですが、設定を同じようにして頂ければで大丈夫です。今回も最後までお付き合いくださいませ。
httpsに一本化する

リダイレクト
URLが引っ越しした場合や今回のようにhttpをhttpsにしたいときに、URLを自動で転送することを「リダイレクト」と言います。
最近ではサーバーのコントロールパネルからhttpsへのリダイレクトやwwwあり・なしができるよういなりました。コントロールパネルから設定出来る場合やWordPressの場合はこの記事の内容にはあてはまりません。
なので、ご自身が借りているレンタルサーバのマニュアルをもう一度確認して見てください。さくらインターネットの新コントロールパネルではドメインリダイレクト機能が新しく導入されました。
コアサーバーは自動でリダイレクトします。コアサーバーの転送と、さくらインターネットのドメインリダイレクトは302のリダイレクトです。Googleは301のリダイレクトを推奨していますので、手動を選んだ方がいいように思います。
リダイレクトの手順
手順はこんな感じで行います。ファイルマネージャーで直接作る方法がありますが、メモ帳などのテキストエディタを使います。サーバーにアップロードする前に、落ち着いてファイルの確認ができるし、バックアップファイルにもなります。
- メモ帳を開く
- リダイレクトのコードをコピー&ペーストする
- 自分のホームページに合うかどうか確認をする
- ファイルを保存する
- サーバーにアップロードする
- ファイル名を「.htaccess」に変える
- 転送が出来ているか確認をする
最後に全てのページが転送できているか確認します。
時間をおかずにすぐに対応しますので、ファイルをアップロードしたらすぐに確認ができます。500などのサーバーエラーの場合はファイルの書き間違えが考えられます。なので、もう一度、全角スペースが入っていないか、綴りが合っているかなど確認してみましょう。
リダイレクトが出来ても警告がでる場合はリンクや画像のURLのコードに「http://」となっている可能性があるからホームページビルダーなどでソース(コード)を確認してみてくださいね。
また、さくらインターネットでは共有SSLを使う際の注意事項があります。私はそれに関しては諦めました~。のちほど説明します。
.htaccessファイルとは
リダイレクトには「.htaccessファイル」を使ったリダイレクトを行います。
.htaccessファイルとは「Apache(アパッチ)」を使っているサーバーでアクセスに関わる設定ができるファイルです。
残念ながら、大抵のレンタルサーバーで使うことが可能ですが、契約者自身の責任で行う為、サポート対象外になります。
.htaccessファイルの書き方
「mod-rewrite」という機能(モジュール)を使います。「mod-rewrite」は、あるURLにきたアクセスを別のURLに転送することができます。
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
「RewriteEngine On」は「mod-rewriteを仕様します」という宣言です。.htaccess内に1つだけで大丈夫です。
「RewriteCond %{HTTPS} off」は「http://」のSSL化していないURLでアクセスした場合という意味です。
「RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}」は「https://のアドレスに書き換えてくださいね」という意味になります。
[R=301,L]の「R=301」は恒久的に、「L」は終わりの意味です。R=302やRだけというのもありますが、それは一時的に転送する場合に使います。
.htaccessファイルの置く場所
.htaccessファイルは同じ階層とそれ以下の階層に働きます。

なので、HTMLで作ったホームページの場合は、トップページのindex.htmlなどと同じ場所に置くいいですよ。
上手く機能が働かない、エラーになった場合は置く場所が間違っていないか確認してみてくださいね。
さくらインターネットでの注意事項
初期ドメインとさくらのサブドメインで共有SSLを設定することで、利用不可のURLがあります。
さくらインターネットのサーバーは「wwwが付いたURL」と「wwwが付いていないURL」を区別することなく、どちらの同じページにアクセスができます。
初期ドメイン:sample.sakura.ne.jp
URLその1:http://www.sample.sakura.ne.jp
→http://www.sample.sakura.ne.jp(使用可)
→SSL化→https://www.sample.sakura.ne.jp(使用不可)
URLその2:http://sample.sakura.ne.jp
→http://sample.sakura.ne.jp(使用可)
→SSL化→https://sample.sakura.ne.jp
例えば、初期ドメインが「sample.sakura.ne.jp」だとします。「http://www.sample.sakura.ne.jp」と「http://sample.sakura.ne.jp」が存在し、この2つをSSL化します。HTTPSで通信できるようになり、アドレスが「http://www.sample.sakura.ne.jp」「http://smple.sakura.ne.jp」「https://www.sample.sakura.ne.jp」「https://sample.sakura.ne.jp」の4つになります。
しかし、「https://www.sample.sakura.ne.jp」だけは使えないので、「https://www.sample.sakura.ne.jp」のURLにアクセスしようとすると「このサイトは安全ではありません」の警告文がでます。でも、「Webページに移動(非推奨)」を選べばリダイレクトされます。
なんだかややこしいので、共有SSLを設定する場合は、wwwが付かないURLで運用することをオススメします。
詳しくはこちらのページをご覧ください。
私の場合は諦めました
私が奉職する神社のホームページの旧サイトはさくらインターネットのサブドメインで運用しています。
旧サイトを常時SSL化したときに警告がでるので、サポートセンターに問い合わせをしました。その時の解答を消してしまったので詳しい話は忘れましたが、「https://www」のページは存在しないので、警告がでるシステムになっています、と説明されたように覚えています。
私の場合は旧サイトであるし、神社サイトはマイナーだし、メインはwwwなしURLだから、このままでいいや~、と諦めました。
共有SSLを使われる場合は、よ~く検討してから設定ください。できたら、ドメインは年間利用2000円以内ですので、独自ドメインを持つことをオススメしますよ。
まとめ

以上、「httpsのwwwなし」のリダイレクトを.htaccessファイルはこんな感じになります。ご自身のURLに変えてアップロードしてください。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.sample\.com) [NC]
RewriteRule ^(.*) https://sample.com/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
前半の「RewriteCond」と「RewriteRule」はwww付きのURLの場合はwwwなしのURLに書き換えて(リダイレクト)してくださいね、という意味です。「RewriteCond」のURLは.(ドット)の前に\(バックスラッシュ)を入力します。\はお使いの状況によって¥(円マーク)になる場合があります。
後半の「RewriteCond」と「RewriteRule」はHTTPSにしてね、と言う意味ですよ。
自動生成のサイトを利用すれば、色々な機能をそなえたファイルが出来上がりますよ!
コアサーバーは、ちょっとSSLについてのマニュアルが少ないような気がします。でも、この方法で行えば大丈夫です。ただ、wwww付きのドメイン設定が必要になります。
手軽に始めたい人は、コアサーバー
信用重視の方は、さくらインターネット がいいですよ!
さくらインターネットとコアサーバーでの常時SSL化の手順SSLをそれぞれまとめました。併せて読んで頂ければ、もっと分かりやすいと思います。