我一直在努力解决一些htaccess重定向问题.我只是花了一些时间在堆栈上阅读和搜索,并且无法获得适用于我的场景的anwser.
我正在将旧客户端网站的301重定向转换为新的客户端网站.旧页面有参数查询,我想从网址中删除.
/menu.php?idCategorie=29&idDetail=172
至
/new-website-page/
我有多个查询要做,这里有几个例子:
/menu.php?idCategorie=29&idDetail=172
/menu.php?idCategorie=29&idDetail=182
/menu.php?idCategorie=29&idDetail=184
/menu.php?idCategorie=29&idDetail=256
所有这些都链接到不同的新页面.
这是我试过的:
RewriteCond %{QUERY_STRING} idDetail=172
RewriteRule ^menu.php(.*) /new-page/? [R=301,L]
我被正确重定向,但URL保留查询字符串:
http://website.com/new-page/?idCategorie=29&idDetail=172
我也试过这个:
RewriteRule ^menu.php?idCategorie=29&idDetail=172$ http://website.com/new-page/? [L,R=301]
还有这个:
RewriteCond %{QUERY_STRING} idDetail=172(.*)$
RewriteRule ^menu.php /new-page-name?$1 [L,R=301]
并且它不起作用(最后仍然有查询字符串)
谢谢!