2011-01-12 19 views
0

私はMod Rewrite Rulesにいくつか問題があります。
私の.htaccessファイル:index.phpの中mod_rewrite/break JSファイルとCSSファイル

RewriteEngine On 
RewriteRule ^img/(.+)$ http://www.dejwid.pl/demo/img/$1 [L] 
RewriteRule ^(.+)$ index.php?p=$1 

私は '/' を使用して$ _GET [ 'p' を]分割:

$params = explode('/', $_GET['']); 

私の問題:
私は '/' の画像を使用している場合、jsファイル、cssファイルは動作しません。
私は '/'を使用しているため、サーバーがそれを見つけることができないと思います。
'、'または ' - 'などを使用すると、すべてがうまく動作します。
ドメイン:/ blog/123/Some-Title

答えて

2

^(。+)$と一致するルールは、あなたのcssファイルとjsファイルで一致している可能性があります。

URLは、実際のファイルは、CSSやJSファイルとして、ある場合には、一致するから、ルールを防ぐために、ルールの前にこの二つの条件を置くのが一般的である:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
+0

それはありません仕事:\しかし、これを/img/file.jpg :) – Dejwid

+0

@Dejwid、申し訳ありませんが、私はどの部分が動作していないか分からない。 cssファイルを取得すると、代わりにindex.phpファイルが呼び出されますか?または、$ paramsの値に問題がありますか? – bmb

関連する問題