Apache 301重定向无法处理长查询字符串

Apache 301重定向无法处理长查询字符串,apache,.htaccess,redirect,Apache,.htaccess,Redirect,我有一个带有查询字符串的长url,我想永久重定向到一个新url,但它不起作用 我正在向.htaccess文件写入以下内容 Redirect 301 /view-all/?c=low-loader-transport&c_new_value=false&sc=&sc_new_value=false&State_Suburb=on&lsu=&lsu_new_value=false&lst=&lst_new_value=false&

我有一个带有查询字符串的长url,我想永久重定向到一个新url,但它不起作用

我正在向.htaccess文件写入以下内容

Redirect 301 /view-all/?c=low-loader-transport&c_new_value=false&sc=&sc_new_value=false&State_Suburb=on&lsu=&lsu_new_value=false&lst=&lst_new_value=false&l_ht[]=607&l_ht[_new_value]=false&l_t=578&search-now.x=80&search-now.y=21 http://www.testdomain.com/low-loader-transport
我做错什么了吗

在我的htaccess文件中还有一个301重定向,工作正常。请参阅以下URL,该URL工作正常:

Redirect 301 /index.php http://www.testdomain.com
任何帮助都将不胜感激。
谢谢。

您无法使用重定向指令匹配查询字符串。使用mod_重写规则,如下所示:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^c=low-loader-transport&c_new_value=false&sc=&sc_new_value=false&State_Suburb=on&lsu=&lsu_new_value=false&lst=&lst_new_value=false&l_ht[]=607&l_ht[_new_value]=false&l_t=578&search-now.x=80&search-now\.y=21$
RewriteRule ^view-all/?$ http://www.testdomain.com/low-loader-transport/? [L,R=301]