2017年04月06日
DynamicMTML .htaccess で HTTP アクセスを HTTPS に
DynamicMTML が有効になっているサイトに http://example.com でアクセスされても https://www.example.com へお通ししたい
というご要望がありましたので、DynamicMTML .htaccess に追記する方法をご案内します。
具体的には、以下のような3通りの URL でのアクセスを
http://example.com/
http://www.example.com/
https://example.com/
↓
ここへリダイレクトしたいという内容です。
https://www.example.com/
お急ぎの方のために
RewriteCond %{HTTP_HOST} !=www.example.net [NC,OR] RewriteCond %{HTTPS} =off RewriteRule ^ https://www.example.net%{REQUEST_URI} [R=301,L]
ホスト名は適宜差し替えてください。
上記コードを、テンプレート DynamicMTML .htaccess 内2カ所の
RewriteEngine On
の直後に記述してください。
記述場所を間違えますと、DynamicMTML の動作を妨げるため、ご注意ください。
ここからは、Movable Type 好きな方向けです。
折角なら <$MTWebsiteHost$> を使いたいと。
RewriteCond %{HTTP_HOST} !=www.<$MTWebsiteHost$> [NC,OR] RewriteCond %{HTTPS} =off RewriteRule ^ https://www.<$MTWebsiteHost$>%{REQUEST_URI} [R=301,L]
www をホスト設定した環境だとこうでしょうか
RewriteCond %{HTTP_HOST} !=<$MTWebsiteHost$> [NC,OR] RewriteCond %{HTTPS} =off RewriteRule ^ https://<$MTWebsiteHost$>%{REQUEST_URI} [R=301,L]
DynamicMTML 用に加工される前に差し替えてしまいましょう、ということでした。
サーバー設定などの条件が揃う場合は、こんな風にも書けるのだとか
RewriteCond %{HTTP_HOST}/%{SERVER_NAME} !^([^/]+)/\1$ [OR] RewriteCond %{HTTPS} =off RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
- カテゴリー
- DynamicMTML
コメントを投稿する