2012-03-21 290 views
0

好吧,我有以下.htaccess,它的工作原理,但我似乎可以改變它的方式,我需要它。.htaccess - 重寫規則

這裏是當前的.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 2012-03-21 22:16:57

回答

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