cakePHPのmod_rewriteの設定

February 24, 2012,
tags: .htaccess cakephp mod_rewrite php


このエントリーをはてなブックマークに追加

cakePHPで画像のリンク切れ起こしてた場合に、なぜか知らないけど、index.phpにリクエストがという現象が起きていました。
これがtopページとかで起きてた場合はもう最悪、、、、
何回もindex.phpが呼ばれるという怪奇現象が発生しておりました。

うーんおっかしぃなぁーとか思いつつ.htaccessの設定とかみてたらカオスな感じに…


    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

ちょwwwwこれじゃファイルがないとindex.phpにリクエストとぶんじゃね?
ってことで以下のように書き換えたら落ち着きました。


    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !^.*\.png$ [NC]
    RewriteCond %{REQUEST_URI} !^.*\.gif$ [NC]
    RewriteCond %{REQUEST_URI} !^.*\.jpg$ [NC]
    RewriteCond %{REQUEST_URI} !^.*\.js$ [NC]
    RewriteCond %{REQUEST_URI} !^.*\.css$ [NC]
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>

扱っているファイルに応じてRewriteCodeに定義してあげればいいのかと思います。

comments powered by Disqus