ちゃんとしたロードバランサはやっぱりよくできてる。
リダイレクト設定も超簡単。
以下のような感じで書けちゃう。
when HTTP_REQUEST {
if { [HTTP::uri] starts_with "/form/"} {
HTTP::redirect "https://[HTTP::host][HTTP::uri]"
}
}
mod_rewrite みたいに面倒なことをしなくてもOK。
ちなみに mod_rewrite で同じことをやろうとすると以下のような感じ。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLog "logs/rewrite_log"
RewriteLogLevel 0
RewriteCond %{HTTPS} Off
RewriteRule ^/form(.*)?$ https://%{HTTP_HOST}/form$1 [L,R]
</IfModule>
ググると、443 番ポートのときに、という設定(以下)が多いけど、
RewriteCond %{SERVER_PORT} !^443$
多分 HTTPS という環境変数を参照するほうが正しい(以下)。
RewriteCond %{HTTPS} Off