条件不参考第二条规则

时间:2011-02-14 11:09:54

标签: php mod-rewrite

RewriteEngine On

RewriteRule (.*)/(.*)\.html index.php?page=$1&title=$2

RewriteRule (.*)/(.*)\.html index.php?profile=$1&staffName=$2 

您好,

基本上我试图使用mod_rewrite来使它当变量id是page时,它引用第一个规则,如果配置文件是isset,那么使用第二个规则。

但是当我尝试它时,页面很好但是配置文件页面正在破坏,因为mod_rewrite试图使用第一个规则并且中断。

任何帮助都会很棒。

谢谢

1 个答案:

答案 0 :(得分:1)

事情是mod_rewrite根据第一个语句解析请求的URL,并根据第二个语句中规定的规则对其进行转换。但是您的初始URL模式是相同的,因此无法区分它们。

另外,放弃文件扩展点的反斜杠...我认为这会带来麻烦。

您也可以使用this tool测试您的规则。

'RewriteRule(。)/(。)。html index.php?page = $ 1& title = $ 2'例如工作正常并将/a/b.html转换为索引?PHP页面= A&安培;标题= b