1

我想要做的是使用具有不同查询字符串的相同 URL 来访问两个不同的页面。

我现在拥有的是一个看起来像这样的 URL

http://mysite.com/embed?a=somestringhttp://mysite.com/embed?b=somestring

我需要获得一个重写规则,该规则将根据查询变量是 a 还是 b 将两者都重定向到两个不同的 URL

下面的工作,但它匹配两个 URL 并将其发送到一个链接

RewriteRule ^embed$ index.php?page=embeda [QSA]

如果我做这两个它不起作用,并且总是匹配第一个。

RewriteRule ^embed$ index.php?page=embeda [QSA]
RewriteRule ^embed$ index.php?page=embedb [QSA]

不知道如何为此做两个不同的重写。

4

1 回答 1

1

使用RewriteCond 指令并检查%{QUERY_STRING}.

RewriteCond %{QUERY_STRING} \ba=
RewriteRule ^embed$ index.php?page=embeda [QSA]

RewriteCond %{QUERY_STRING} \bb=
RewriteRule ^embed$ index.php?page=embedb [QSA]

RewriteCond 实际上只是一个条件语句,一个 if 语句。注意\b模式中的位,它是一个字边界。我把它放在那里是为了确保即使在“b”之前还有其他查询字符串参数也能正常工作。

于 2012-09-03T01:19:43.563 回答