使用类似的规则使用htaccess重定向

时间:2012-03-27 10:24:30

标签: .htaccess mod-rewrite

我正在使用.htaccess来重写我的网址,到目前为止,几乎正在工作......

我遇到的问题是mysite.com/authormysite.com/author/submit/1都重定向到同一页面( mysite.com/author 。)

这些是我目前正在使用的重写规则:

RewriteRule ^author           /zabjournal/pages/author/active_submissions.php [L]
RewriteRule ^author/submit/1  /zabjournal/pages/author/submit_step1.php [L]

如何让第二条规则发挥作用?

1 个答案:

答案 0 :(得分:1)

这是因为你把规则放错了。

第一条规则验证并执行,因为author是两个网址中的第一个字符串。

/author
/author/submit/1
/author/blah
/author/blah/blah/blah/blah/blah

上面的网址都与第一条规则匹配,因此,它将被执行。

规则末尾的 [L] (代表 last )意味着如果执行该规则,它将不会处理其他规则。

但是,如果您更改重写规则的顺序,它将首先检查URL是否与/author/submit/1匹配,如果匹配,它将执行重写然后停止;但如果没有,它将继续下一个规则,在您的示例中,该规则将为/author