SSL化によるリダイレクト処理の方法
サーバ上に「.htaccess」ファイルをアップロードすることで行うことができます
リダイレクト処理の方法
サーバ内に「.htaccess」ファイルをアップロードすることで、リダイレクト※を行うことが出来ます。このファイルは不可視化ファイルと呼ばれるもので、お使いのパソコンによっては表示されない場合があります。表示されない場合は、パソコンの設定を見直すことで表示ができます。
以下サンプルファイルをお客様の環境に合わせて編集し、サーバへアップロードしてください。テキストファイルのままアップロードを行い、サーバ上で拡張子も含めファイル名を変更(リネーム)していただくことで.htaccessファイルとして処理が行われます。
※httpに飛んできた場合に自動的にhttpsに転送(リダイレクト)することができます。
正しく動作しない場合、以下をご確認ください
- .htaccessは基本的に1つを使用してください。.htaccess_newなど、名称を変えていても複数の.htaccess形式ファイルがサーバの同じ階層にある場合、うまく動作しないことがあります。
- ファイル名は半角英数で記載してください。全角や全角スペース、日本語が入っている場合は正しく動作いたしません。
- ファイルの拡張子が.txtのままの場合、動作しません。「.htaccess.txt」ではなく「.htaccess」にしてください。
- .htaccessを編集保存する際は、文字コードは「UTF-8Nbom(UTF-8 BOMなし)」、改行コードは「LF」として保存してください。
「保護されていない通信」と表示される場合
「http://〜」のアクセスを「https://〜」へリダイレクトをしても「保護されていない通信」と表示される場合は、HTMLソースの中に「http://〜」で記述されたリンクが残っている可能性があります。「https://〜」のリンクに修正をしてください。もしくは相対パスに変更してください。
よくあるリンク切れの例
- 画像が表示されない場合
画像のタグが「http://〜」で指定されている。※相対パスではなく絶対パスで指定している。 - ボタンをクリックしてもページが表示されない場合
ボタンに設定してあるリンクが「http://〜」で指定されている。
サンプルコード
(パターン1)http://〜のアクセスをすべてhttps://〜へリダイレクトしたいとき
下の[リダイレクト先のURL]の部分を置き換えた内容で.htaccessファイルを作成し、public_html配下へアップロードしします。
すでに.htaccessが存在し設定がされている場合は、.htaccessファイルの先頭へ追記してください。
コードの意味
<IfModule mod_rewrite.c>
RewriteEngine On ・・・リダイレクト機能を有効にする
RewriteCond %{HTTPS} off ・・・httpsではない接続の場合にリダイレクト対象とする
RewriteRule ^(.*)$ [リダイレクト先のURL]/$1 [R=301,L] ・・・指定のURLへリダイレクトする
</IfModule>
(例)http://〜へのアクセスをすべてhttps://www.example.comへリダイレクトする
—————————————————————————————
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
</IfModule>
—————————————————————————————
全てのhttpアクセスをhttpsにリダイレクトするサンプル
内容を修正してご利用ください
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://転送先のホームページ/$1 [R=301,L] </IfModule> #このファイルを、FTPでトップページのあるpublic_htmlに転送し、ファイル名を.htaccessに変更します。 #もしすでに.htaccessが設置してある場合は上記を先頭に追記してください。 #上書きしてしまうとウェブページが表示されませんので必ずご確認ください。
(パターン2)別名のhttps://のページへリダイレクトさせたいとき
(例えばhttps://example.comへのアクセスをhttps://www.example.comへリダイレクトさせたい時など)
以下の[リダイレクト対象のFQDN]、[リダイレクト先のURL]の部分を置き換えた内容で.htaccessファイルを作成し、public_html配下へアップロードしてください。 すでに.htaccessが存在し設定がされている場合は、.htaccessファイルの先頭へ追記してください。
※注意※リダイレクト対象のFQDNに、.(ドット)が含まれている場合は、.(ドット)の前に半角の「¥」をつけてください。
コードの意味
<IfModule mod_rewrite.c>
RewriteEngine On ・・・リダイレクト機能を有効にする
RewriteCond %{HTTPS} on ・・・https接続の場合にリダイレクト対象とする
RewriteCond %{HTTP_HOST} ^[リダイレクト対象のFQDN]$ [NC]・・・リダイレクト対象とするFQDN
RewriteRule ^(.*)$ [リダイレクト先のURL]/$1 [R=301,L] ・・・指定のURLへリダイレクトする
</IfModule>
(例)https://example.comへのアクセスをhttps://www.example.comへリダイレクトする
—————————————————————————————
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^example¥.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
</IfModule>
—————————————————————————————
別名のページへリダイレクトさせるサンプル
内容を修正してご利用ください。
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} on RewriteCond %{HTTP_HOST} ^example¥.com$ [NC] RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L] </IfModule> #このファイルを、FTPでトップページのあるpublic_htmlに転送し、ファイル名を.htaccessに変更します。 #もしすでに.htaccessが設置してある場合は上記を先頭に追記してください。 #上書きしてしまうとウェブページが表示されませんので必ずご確認ください。 #Macの場合は、¥はバックスラッシュに変更してください。[ Oprion+¥ ]で入力できます。
Macをお使いの方
Macの場合は、¥はバックスラッシュに変更してください。[ Oprion+¥ ]で入力できます。
お困りの際は「よくある質問」をご活用ください