さくらインターネットでwwwありとwwwなしのURL統一を.htaccessファイルで行う方法
レンタルサーバーのさくらインターネットではドメインを登録すると、通常はwwwありでもなしでもアクセスできます。「でも、wwwなしの方がすっきりしていいな」とか「やっぱりwwwありの方がインターネットらしくていいな」とか思うことはないでしょうか?
wwwあり、またはwwwなしのどちらかに統一しておくと、ユーザーが「wwwあったっけ?なかったっけ?」と記憶を頼りにURLを入力しても、どちらでもちゃんと表示されてアクセスを取りこぼすことがなくなります。
さくらインターネットでURLの統一を行うにはコツがありますので、まとめておきたいとおもいます。SSLのありなし、wwwありなしの合計4種類で設定する方法をご紹介します。
[このページの内容]
SSLを使用せず、wwwなしで統一する場合
SSLを使用しない場合(http://~でアクセスする場合)は、.htaccessをアップロードするだけで統一することができます。
まず、メモ帳などを開いて、以下のものを記述してください。sample.comとなっている個所は環境にあわせて変更してください。2行目に「\.sample\.com」となっている個所は、ピリオドの前に「\」記号をつけるのを忘れないようにしてください。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.sample\.com
RewriteRule (.*) http://sample.com/$1 [R=301,L]
これは、「wwwでアクセスがあってもwwwなしの方にリダイレクトしてくださいね」、という設定になります。
上の内容を記載したら、「.htaccess」というファイル名にして保存します。保存できない場合は、「.htaccess.txt」というようなファイル名にしていったん保存します。そして、FTPソフトでレンタルサーバーにアップロードし、ファイル名を「.htaccess」に変更します。
レンタルサーバーに.htaccessファイルをアップロードできたら、最後に.htaccessファイルのパーミッション(権限)を604(rw----r--)に設定します。
これで設定は完了です。
SSLを使用し、wwwなしで統一する場合
SSLを使用する場合(https://~でアクセスする場合)でwwwなしで統一する場合には、一工夫必要になります。
まず、全体の流れは以下のようになります。
・wwwなしとありのドメインを1つずつ設定する
・それぞれのドメインに対して、.htaccessでリダイレクト設定を行う
ここからは、具体的な設定手順をご紹介します。
(1)管理画面にログインし、画面左のドメイン設定メニューから「ドメイン/SSL設定」を選択します。
(2)現在登録されているドメインの一覧が表示されます。設定したいドメインの「変更」ボタンをクリックします。ドメインの登録がまだの場合は、先にドメインの登録を行ってください。また、SSL証明書の登録もまだの場合は、先にSSL証明書の登録を行ってください。SSL証明書の登録の仕方はさくらインターネットでSSLを無料で設定する方法をご確認ください。
(3)「1.設定をお選びください」のところで「wwwを付与せずマルチドメインとして使用する(上級者向け)」を選択します。
(4).htaccessファイルを利用して、転送設定を行います。
まず、メモ帳などを開いて、以下のものを記述してください。
SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
SSLの設定でhttpでアクセスしてもhttpsの方へ転送することとが書かれています。
上の内容を記載したら、「.htaccess」というファイル名にして保存します。保存できない場合は、「.htaccess.txt」というようなファイル名にしていったん保存します。そして、FTPソフトでレンタルサーバーにアップロードし、ファイル名を「.htaccess」に変更します。
レンタルサーバーに.htaccessファイルをアップロードできたら、最後に.htaccessファイルのパーミッション(権限)を604(rw----r--)に設定します。
httpでアクセスしても、httpsにアクセスが転送されることを確認してください。
(5) (1)~(3)までの設定によって、wwwありのURLではページが表示されなくなります。ここで終了してもいいのですが、wwwありでアクセスしてきた人をwwwなしのページに転送するには、さらに設定する必要があります。
再びドメイン一覧のページに戻ります。右上にある「新しいドメインの追加」ボタンを押します。
(6)下のような画面が開きます。ここからは、URLを統一したいドメインのwwwサブドメインを追加していきます。「2.さくらインターネットで取得したドメインを使う」、または「5.他社で取得したドメインを移管せずに使う」を選択します。URLを統一したいドメインがさくらインターネットで取得したものであるなら2を、それ以外のドメイン取得サービスで取得したものであるなら5を選択してください。
(7)ここでは、「5.他社で取得したドメインを移管せずに使う」場合の説明をしたいと思います。下の画像のように、「ドメインの追加へ進む」をクリックします。
(8)「他社で取得された独自ドメインのサブドメインを追加」のところで、下の画像のようにwwwをつけたドメイン名を登録します。
(9)再びドメイン一覧のページに戻ります。
(8)で追加したwwwつきドメインが表示されていることを確認します。問題なければ、SSL証明書を登録します。SSL証明書の登録の仕方はさくらインターネットでSSLを無料で設定する方法をご確認ください。
(10)SSL証明書の追加が完了したら、ドメイン一覧のところから「変更」ボタンを押して、設定画面を開きます。
(12)下の画像のように、まず「wwwを付与せずにマルチドメインとして使用する(上級者向け)」にチェックを入れます。マルチドメインの対象フォルダ名を指定します。「wwwドメイン名」などのような形式で、わかりやすい名前をつけておくと良いです。SSLの種類は「SNI SSL」を選択します。
(12)FTPソフトなどでサーバーにアクセスし、(11)で指定したフォルダを作成します。
(13).htaccessファイルを用意します。
以下のような内容になります。sample.comのところを適宜変更してください。
SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.sample\.com
RewriteRule (.*) https://sample.com/$1 [R=301,L]
</IfModule>
SSLページにアクセスを転送することと、wwwありでアクセスしてもwwwなしのページに転送することが記載されています。
上の内容を記載したら、「.htaccess」というファイル名にして保存します。保存できない場合は、「.htaccess.txt」というようなファイル名にしていったん保存します。そして、FTPソフトでレンタルサーバーにアップロードし、ファイル名を「.htaccess」に変更します。アップロード先のフォルダは(12)で作成した指定フォルダになります。
レンタルサーバーに.htaccessファイルをアップロードできたら、最後に.htaccessファイルのパーミッション(権限)を604(rw----r--)に設定します。
httpでアクセスしてもhttpsにアクセスが転送されること、ならびにwwwありでアクセスしてもwwwなしに転送されることを確認してください。
SSLを使用せず、wwwありで統一する場合
SSLを使用しない場合(http://~でアクセスする場合)は、.htaccessをアップロードするだけで統一することができます。
まず、メモ帳などを開いて、以下のものを記述してください。sample.comとなっている個所は環境にあわせて変更してください。2行目に「sample\.com」となっている個所は、ピリオドの前に「\」記号をつけるのを忘れないようにしてください。
RewriteEngine on
RewriteCond %{HTTP_HOST} ^sample\.com
RewriteRule (.*) http://www.sample.com/$1 [R=301,L]
これは、「wwwなしでアクセスがあってもwwwありの方にリダイレクトしてくださいね」、という設定になります。
上の内容を記載したら、「.htaccess」というファイル名にして保存します。保存できない場合は、「.htaccess.txt」というようなファイル名にしていったん保存します。そして、FTPソフトでレンタルサーバーにアップロードし、ファイル名を「.htaccess」に変更します。
レンタルサーバーに.htaccessファイルをアップロードできたら、最後に.htaccessファイルのパーミッション(権限)を604(rw----r--)に設定します。
これで設定は完了です。ブラウザを開いて、wwwありのURLでアクセスできるかどうか確認してください。
SSLを使用し、wwwありで統一する場合
SSLを使用する場合(https://~でアクセスする場合)でwwwありで統一する場合には、一工夫必要になります。
まず、全体の流れは以下のようになります。
・wwwなしとありのドメインを1つずつ設定する
・それぞれのドメインに対して、.htaccessでリダイレクト設定を行う
ここからは、具体的な設定手順をご紹介します。なお、ここでは、sample.comのドメインで運用するものとして話を進めます。
(1)管理画面にログインし、画面左のドメイン設定メニューから「ドメイン/SSL設定」を選択します。
(2) ドメイン一覧画面が開きます。右上にある「新しいドメインの追加」ボタンを押します。
(3)下のような画面が開きます。
ここから(8)までは、URLを統一したいドメインのwwwサブドメインを追加していきます。www.sample.comのドメインを設定していく流れになります。
「2.さくらインターネットで取得したドメインを使う」、または「5.他社で取得したドメインを移管せずに使う」を選択します。URLを統一したいドメインがさくらインターネットで取得したものであるなら2を、それ以外のドメイン取得サービスで取得したものであるなら5を選択してください。
(4)ここでは、「5.他社で取得したドメインを移管せずに使う」場合の説明をしたいと思います。下の画像のように、「ドメインの追加へ進む」をクリックします。
(5)「他社で取得された独自ドメインのサブドメインを追加」のところで、下の画像のようにwwwをつけたドメイン名を登録します。最初のボックスにwwwを、2つ目のボックスにsample.comを追加する形になります。
(6)再びドメイン一覧のページに戻ります。
(5)で追加したwwwつきドメインが表示されていることを確認します。問題なければ、SSL証明書を登録します。SSL証明書の登録の仕方はさくらインターネットでSSLを無料で設定する方法をご確認ください。
(7)SSL証明書の追加が完了したら、ドメイン一覧のところから「変更」ボタンを押して、設定画面を開きます。
(8)下の画像のように、まず「wwwを付与せずにマルチドメインとして使用する(上級者向け)」にチェックを入れます。SSLの種類は「SNI SSL」を選択します。
マルチドメインの対象フォルダ名は、sample.comを運用しているフォルダと同じになるようにします。www.sample.comでアクセスがあったときに、sample.comで運用しているフォルダを見に行くという設定になります。
(9)続いて、sample.comのドメイン情報を変更します。
ドメインの一覧のページから、sample.comの「変更」ボタンをクリックします。
(10)「1.設定をお選びください」のところで「wwwを付与せずマルチドメインとして使用する(上級者向け)」を選択します。
(11).htaccessファイルを利用して、転送設定を行います。
まず、メモ帳などを開いて、以下のものを記述してください。sample.comとなっている個所は環境にあわせて変更してください。「\.sample\.com」となっている個所は、ピリオドの前に「\」記号をつけるのを忘れないようにしてください。
SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{ENV:HTTPS} !on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^sample\.com
RewriteRule (.*) https://www.sample.com/$1 [R=301,L]
</IfModule>
SSLの設定でhttpでアクセスしてもhttpsの方へ転送することと、sample.comでアクセスした場合はwww.sample.comへ転送することが書かれています。
上の内容を記載したら、「.htaccess」というファイル名にして保存します。保存できない場合は、「.htaccess.txt」というようなファイル名にしていったん保存します。そして、FTPソフトでレンタルサーバーにアップロードし、ファイル名を「.htaccess」に変更します。
.htaccessはsample.comを運用しているフォルダに置きます。
レンタルサーバーに.htaccessファイルをアップロードできたら、最後に.htaccessファイルのパーミッション(権限)を604(rw----r--)に設定します。
httpでアクセスしても、httpsにアクセスが転送されることや、wwwありにURLが統一されていることを確認してください。
まとめ
さくらインターネットでURLをwwwなしかwwwありのどちらかに統一する場合、SSLを使わないととても簡単に実現できるのですが、SSLがあるとちょっと手間がかかります。
慣れるとすぐに終わるのですが、初めてやる場合は少し戸惑うかもしれませんね。でも、上の解説を読んで設定してもらえれば大丈夫かと思いますので、試してみてください。
さくらのレンタルサーバ (公式サイト)
ツイート |
関連記事
1.PHP、WordPressが高速なさくらインターネット・レンタルサーバーのレビュー
2.さくらインターネットでSSLを無料で設定する方法
3.さくらインターネットで独自ドメインを設定する方法
4.WEBプログラミングにおすすめの高速で安定したレンタルサーバー
▲ このページの上部へ戻る