2008年12月6日土曜日

RewriteCondで条件によって別のRewriteBaseを使う

できないみたい。

CakePHPで試してみたらできるようだ。

<IfModule mod_rewrite.c>
 RewriteEngine On

 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^(.*)$ index.php?url=$1 [QSA]

 RewriteCond %{REQUEST_URI} ^/foo
 RewriteBase /foo

 RewriteCond %{REQUEST_URI} ^/bar
 RewriteBase /bar
</IfModule>

CakePHPではWebのルート直下以外にCakeのホームディレクトリを作ろうとするとRewriteBaseの設定が必要になる。
上記の方法を使えば複数のディレクトリのように見せることができそう。



参考:mod_rewrite - Apache HTTP Server (和訳無し)


0 件のコメント:

ブログ アーカイブ

tags