2012-03-21 12 views
0

私は以下の.htaccessを持っていますが、動作しますが、必要な方法で変更することができます。ここ.htaccess - RewriteRule

は、私は、次の

RewriteRule ^(.*)/(.*)$ /index.php?cat=$1&tpl=$2 [L] 

は、だから私は、私はそのルールが動作するのですかどのように疑問に思って追加する必要があり、現在の.htaccess

RewriteEngine on 
RewriteCond $1 !^(index\.php|admin|system|images|tpl|js|lib|favicon\.ico|robots\.txt) 
RewriteRule ^(.*)$ /index.php?tpl=$1 [L] 


Options +FollowSymlinks 

のですか?私はそれを追加するときと同じように。

+0

'[L]'は* last *を意味します。したがって、最初の書き換えが成功した場合、他の誰も同じ要求に対して何も行いません。 – kirilloid

答えて

0

したがって、RewriteCondに一致する最初のリクエスト以外のすべてのリクエストを処理するルールを追加する場合、それらは/に分割されます。

私はこれがうまくいくと思います。書き換え条件で$ 1を$ {REQUEST_URI}に変更しました。

RewriteEngine on 
RewriteCond ${REQUEST_URI} !^(index\.php|admin|system|images|tpl|js|lib|favicon\.ico|robots\.txt) 
RewriteRule ^(.*)$ /index.php?tpl=$1 [L] 

RewriteRule ^([^/]*)/?(.*)?$ /index.php?cat=$1&tpl=$2 [L] 

Options +FollowSymlinks