0

我正在努力做到这一点:

www.amazingjokes.com/cache/search.php?term=programming

去这个:

wwww.amazingjokes.com/popular/programming

但我无法让它正常工作。我试过像

RewriteRule ^cache/search.php?term=(.*)$ /popular/$1 [R=301,L]

但无济于事。

4

1 回答 1

2

RewriteRule 不接收查询字符串,它实际接收的只是文件的路径。所以当你要去的时候/cache/search.php?term=programming,它实际收到的只是/cache/search.php

但是,您可以在%{QUERY_STRING}变量上使用 RewriteCond:

RewriteCond %{QUERY_STRING}     ^term=(.*)$     [NC]
RewriteRule ^/cache/search.php$ /search/%1      [NC,L,R=301]
于 2012-09-08T12:57:11.013 回答