.htaccess-重写规则

.htaccess-重写规则,.htaccess,mod-rewrite,url-rewriting,.htaccess,Mod Rewrite,Url Rewriting,好的,我有下面的。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

好的,我有下面的。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]

所以我想知道我如何让这个规则起作用?当我添加它时,它不会这样做。

因此,如果您想添加一个规则,该规则将处理除第一个与重写条件匹配的请求之外的所有请求,并且这些请求将被拆分为/

我想这样的事情会管用的。请注意,我在重写条件中将$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
[L]
表示最后一个。因此,如果第一次重写成功,其他人将无法处理相同的请求。