htaccess 301重定向不起作用

时间:2016-03-19 14:01:33

标签: asp.net apache .htaccess redirect

我正在尝试重定向此链接

  • 本地主机/脚本/ prodlist.asp strSearch = REMS + POWER + PRESS + E + ATTREZZATURE&安培; strSearchType = OR&安培; strSearchMin = 0&安培; strSearchMax = 0&安培; strSearchCat = 0&安培; curPage = 86&安培;的SortField = SKU

  • 本地主机

到目前为止,我尝试了不同的东西但没有工作。现在我在这里:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^(strSearch=TRE+ESSE+TRE+IDROSELF+BIDET+WC+SOSPESO+IDEAL+STANDARD+SERIE+21+STEP+SANITARI+CERAMICA+PIATTO+DOCCIA+EDRAULICA)$
RewriteRule ^Scripts/prodlist\.asp$ localhost [R=301,L]

但我仍然得到404错误。任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您的链接与您尝试在.htaccess代码段中捕获的查询字符串不符。此外,您尝试从外部重定向到localhost,这将解析为http://example.com/localhost

我能想出的最符合原始链接的是以下

RewriteCond %{QUERY_STRING} ^strSearch=(.+)&strSearchType=(.+)&strSearchMin=(.+)&strSearchMax=(.+)&strSearchCat=(.+)&curPage=(.+)&sortField=(.+)$
RewriteRule ^Scripts/prodlist\.asp$ http://example.com/ [L,R=301]

但是,您可以只指定完整的查询字符串,而不是使用常规捕获模式:

RewriteCond %{QUERY_STRING} ^strSearch=REMS+POWER+PRESS+E+ATTREZZATURE&strSearchType=OR&strSearchMin=0&strSearchMax=0&strSearchCat=0&curPage=86&sortField=sku$
RewriteRule ^Scripts/prodlist\.asp$ http://example.com/ [L,R=301]