将查询字符串url重定向到静态URL

时间:2013-06-25 19:25:30

标签: .htaccess

我遇到了使用查询字符串重定向网址的问题:

http://mysite.com/a/b/index.html?title=abc到一次性网址说:http://mysite.com/xyz/asdf/

我一直在摸索这一段时间,并没有找到任何可以帮助我解决这个问题:

RewriteCond %{QUERY_STRING} title=abc [NC]
RewriteRule ^/a/b/(.*)$ http://www.mysite.com/xyz/asdf/? [L,R=301]

1 个答案:

答案 0 :(得分:0)

通过httpd.conf启用mod_rewrite和.htaccess,然后将此代码放在.htaccess目录下的DOCUMENT_ROOT中:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{QUERY_STRING} (^|&)title=abc(&|$) [NC]
RewriteRule ^a/b/(.*)$ http://www.mysite.com/xyz/asdf/? [L,R=302,NC]

记住RewriteRule与前导斜杠不匹配。

验证一切正常后,将R=302替换为R=301。在测试mod_rewrite规则时,请避免使用R=301(永久重定向)。