サーバー

パラメータ(クエリ)の付いたURLをRewriteRuleを使ってアクセス制御

2009年09月30日
再度、RewriteRuleを使ってアクセス制御の必要に迫られました。

今度は、URLにパラメータ(クエリ)が付いています。

色々やってみたのですが、うまくいきません。
やっとたどり着いたのが、サーバー変数です。

例えば、
http://sample.ooo/sample.html?id=ABCD

http://sample.ooo/sample/sample.php?id=ABCD
へ飛ばしたいときは

--------------------------------------------------------------------
RewriteEngine on
RewriteRule ^sampel\.html$ /sample/sample.php?query=%{QUERY_STRING} [L]
--------------------------------------------------------------------

です。

ただ、
http://sample.ooo/sample.html?id=ABCD&code=EFGH

http://sample.ooo/sample/sample.php?id=ABCD
となります。


このほかにも便利なサーバー変数が色々あります。

こねくり回して、やっと思う動きを実現できました。