リライトでURLのパラメータを扱うとき
パラメータつきのURLをapacheでリライトして、
新しいURLに取得したパラメータを埋め込んでリダイレクトさせる処理をします。
RewriteRule ^/hoge/piyo?name=([^/]+) http://[hostname]/new/hoge/piyo/$1 [R=301,L]
これで行けると思ったけどだめだった
RewriteRuleは、クエリ文字列(URLパラメタ)無しのURIしか見ない。
みたいです。
どうやったら取得できるのか
RewriteCond
を使ってパラメータを取得します。
こう
RewriteEngine On RewriteCond %{QUERY_STRING} id=([^/]+)$ RewriteRule ^/hoge/piyo$ http://[hostname]/new/hoge/piyo=%1 [R=301,L]
できたー(∩´∀`)∩