HTTPSへのリダイレクトとドメイン正規化を目的とした汎用.htaccess

「httpsに対応しているがhttpでアクセスされるかもしれない」「wwwありのサブドメイン無しで運営しているが、wwwを付けずにアクセスされるかもしれない」といった場合を想定して、意図したURLにHTTPSでリダイレクト(自動転送)させたい時の汎用的な.htaccessです。

www有りの場合

# httpでのアクセスを、httpsにリダイレクト
RewriteCond %{HTTPS} off
RewriteRule ^(.*$) https://www.example.com/$1 [R=301,L]

# httpsからのアクセスでwww無しの場合、www有りにリダイレクト
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^example\.com$
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

www無しの場合

# httpでのアクセスを、httpsにリダイレクト
RewriteCond %{HTTPS} off
RewriteRule ^(.*$) https://example.com/$1 [R=301,L]

# httpsからのアクセスでwww有りの場合、www無しにリダイレクト
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
タイトルとURLをコピーしました