ホーム > ネット > .htaccess 使い方 サイトのSSL化 http https 双方向 リダイレクト
目次 | 元のページ 前のページ | 次のページ サイトマップ | ページEND

.htaccess 使い方 サイトのSSL化 http https 双方向 リダイレクト


.htaccess 使い方 サイトのSSL化 http https 双方向 リダイレクト



Google が、2014年に、検索エンジンにてSSL化されたサイトを優遇する方針を表明したことにより、SEO対策の一環として、また、近年のセキュリティ機運の高まりからサイトの常時SSL化が進んでいます

http URL (アドレス) で、お気に入り等に登録してあるユーザー、SEO対策として重要な http URL での外部リンクを https URL へ導いてあげる必要があります


サイトをSSL化するにあたって必要になるのが、http から https へのリダイレクト設定で、.htaccess にその設定を記述します




さくらインターネットにて WordPress を利用していない場合の .htaccess の記述



レンタルサーバーとして、さくらインターネットにて、WordPress を利用していない場合の http から https へのリダイレクト (サイトのSSL化)、および、https から http へのリダイレクト (サイトの非SSL化)は、.htaccess ファイルに下記の様に記述します


記述
場所
.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>
説明 SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
SNI SSLを利用しており、サイトがWordPressではない場合、記述します
SSL が SNI かそうでないかは、さくらインターネットのコントロールパネル、「ドメイン一覧」にて確認できます

SSL設定後の 「ドメイン 一覧」 です

さくらインターネット SSL サーバー証明書 設定方法 」 参照
<IfModule mod_rewrite.c>
既に、「.htaccess」 内に記述がある場合、省略します
この記述が複数が複数あると、エラーになります
RewriteEngine on
既に、「.htaccess」 内に記述がある場合、省略します
この記述は複数あっても、同一動作を指定しているだけなので無駄になります
RewriteCond %{ENV:HTTPS} !on
サイトページへのアクセス URL が SSL (HTTPS) でない場合
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
アクセス URL を HTTPS (SSL)  に書き変えます (リダイレクトします)
</IfModule>
既に、「.htaccess」 内に記述がある場合、省略します
この記述が複数が複数あると、エラーになります (<IfModule mod_rewrite.c>との対指定)
記述
http から https へのリダイレクト (サイトのSSL化)
SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
RewriteCond %{ENV:HTTPS} !on
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
https から http へのリダイレクト (サイトの非SSL化)
SetEnvIf REDIRECT_HTTPS (.*) HTTPS=$1
RewriteCond %{ENV:HTTPS} on
RewriteRule .* http://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]



WordPressをご利用の場合

WordPressサイトで上記設定を適用すると、予約投稿ができなくなります
また、過去の投稿やサイトURLの置換はされませんので、プラグインの利用をおすすめします

.htaccessによるアクセス制御 – さくらのサポート情報 」 より


「.htaccess」の作り方等につきましては、「 .htaccess 使い方 書き方 作り方 」 を
「さくらインターネット」でのSSL設定(常時SSL化)方法につきましては、「 さくらインターネット SSL サーバー証明書 設定方法 」 を ご参照下さい (別タブ(ウィンドウ)が開きます)




内部リンクの書き換え


内部リンクについても、絶対 URL で指定している箇所は、http URL を https URL に書き変える必要があります

内部リンクの書き換えについては、「Devas(ディーヴァス)」等のフリーソフトを使用して、一括変換してしまうのがお勧めです

一括変換フリーソフト Devas(ディーヴァス)につきましては、以下のページをご参照下さい (別タブ(ウィンドウ)が開きます) ⇒ 一括変換フリーソフト Devas(ディーヴァス)の使い方




.http から https へのリダイレクト 良く見かける記述 注意


ネット上では、下記の様に設定すれば良いような記述をよく見かけますが、「さくらインターネット」では正常に動作しません

記述場所 .htaccess
記述内容 RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://abhp.net/$1 [R=301,L]
説明 RewriteCond %{HTTPS} off
HTTPS アクセスでない場合
RewriteRule ^(.*)$ https://abhp.net/$1 [R=301,L]
アクセス URL を HTTPS URL に書き変える指定
[R=301,L] は、恒久的な移転 (R=301) で、
RewriteRule は、この文で終わり (L) の意味です




.htaccess で 良く使われる フラグ オプション パラメータ 意味


フラグ 意味
[NC] 大文字小文字を区別しない
[R=301,L] R=301 レスポンスコードを 301 (恒久的な移転) に変更
L 直後に続くルールを実行しない
RewriteCond に続けて RewriteRule を複数記述するような場合、最終文につける

目次 | 元のページ 前のページ | 次のページ サイトマップ | ページTOP
ホーム > ネット > .htaccess 使い方 サイトのSSL化 http https 双方向 リダイレクト
   

© 2014 abhp.net All Rights Reserved.

参考情報


.htaccessによるアクセス制御 – さくらのサポート情報
.htaccessでHTTPアクセスをSSLでリダイレクト(逆もアリ) - hogehoge foobar Blog Style5
.htaccessファイルでHTTPアクセスをSSLにリダイレクトする方法とその逆も | IT女子のお気に入りフォルダ
htaccessでHTTPSにリダイレクトする - Qiita
mod_rewriteでHTTP / HTTPSの切り替え - Qiita

ページTOP
ページTOP
ページTOP
ページTOP