apacheのmod_rewriteでSSL通信を強制する。

ログインが必要なサイトを作っていると、このページはSSLを強制したい、みたいのがあるじゃないですか。 いや、うちは全く関係ないんですけれどね。 そういうサイトをいじらせてもらう機会があったので、メモ。

mod_rewriteについては apache2のhttpd.confでURLの正規化をやってみたメモ。 なんかもどうぞ。

全部のURLで転送したい場合、httpd.confか**.htaccess**に

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

こんな感じで書けばおっけー。

お察しの通り、特定のURL(ここでは/login.html)だけなら

RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^/login.html$ https://example.com/login.html [R=301,L]

となります。 普通の転送と同じ感じやね。

最近apacheネタばっかな気がするなぁ・・・。