foldrr's weblog

旧ブログ http://d.hatena.ne.jp/foldrr/

CakePHP mod_rewrite の設定

mod_alias で /home/*/public_html/ をドキュメントルートにしている場合を想定する。

/.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /ユーザー名/path/to/cake/
    RewriteRule ^$   app/webroot/   [L]
    RewriteRule (.*) app/webroot/$1 [L]
</IfModule>

/app/.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /ユーザー名/path/to/cake/app/
    RewriteRule ^$   webroot/   [L]
    RewriteRule (.*) webroot/$1 [L]
</IfModule>

/app/webroot/.htaccess

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /ユーザー名/path/to/cake/app/webroot/
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>