我需要301重定向一个在网址中包含get参数的旧网址。
我需要301网址:
http://www.website.com/choose?cat=womens
到此网址:
http://www.website.com/womens
我在没有工作的情况下进行了搜索和尝试:
RewriteCond %{QUERY_STRING} cat=womens
RewriteRule ^choose\.php$ /womens [L,R=301]
我哪里错了?
答案 0 :(得分:2)
你几乎是正确的,只有2个问题:
.php
根据问题在choose
之后的原始URI中没有
?
以删除原始查询字符串您可以使用:
RewriteCond %{QUERY_STRING} (?:^|&)cat=([^&]+) [NC]
RewriteRule ^choose(?:\.php)?$ /%1? [L,R=301,NC]
答案 1 :(得分:-1)
试试这些:
RewriteCond%{QUERY_STRING} ^ cat = womens $
RewriteRule ^选择$ http://www.website.com/womens? [R = 301,L]