2012-03-21 5 views
0

У меня есть следующий .htaccess, и он работает, но я могу изменить его так, как он мне нужен..htaccess - RewriteRule

Вот текущий .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 

мне нужно добавить следующее

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

Так мне интересно, как я могу это правило работать? как когда я его добавляю, это не так.

+0

'[L]' означает * последний *. Следовательно, если первый переписывать работает, никто другой не будет делать по одному и тому же запросу. – 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