基于具有相同页面相同参数的查询字符串的多个RewriteCond

时间:2018-06-21 09:01:31

标签: .htaccess url-rewriting

这是我的htaccess代码:

RewriteCond %{THE_REQUEST} ^(GET)\/site\/oldpage\.asp/\?id=(.*)&tid=(.*)\ HTTP
RewriteRule ^/newfolder/main/newpage-%2/#post-%1? [L,R=301]

RewriteCond %{THE_REQUEST} ^(GET)\/site\/oldpage\.asp/\?id=(.*)\ HTTP
RewriteRule ^/newfolder/main/newpage-%1/? [L,R=301]


`http://olddomain.com/site/oldpage.asp?id=32`
`http://olddomain.com/site/oldpage?id=677&tid=32`

结果仅在第一个参数上有效,并将我重定向到

我的目标是获得此Urls:

如果仅 id ,则 http://olddomain.com/main/newpage-32/

如果 id tid ,则 http://olddomain.com/main/newpage-32/#post-677

没有任何查询字符串

我现在得到的是:

id tid 的结果是 http://olddomain.com/main/newpage-677/?id=677&tid=32

如果我仅发送 id http://olddomain.com/main/newpage-32/?id=32有效,但查询字符串位于结尾

有什么办法解决吗?

0 个答案:

没有答案