11

我正在努力为最初使用查询字符串构建的网站创建适当的 301 重定向。旧的 URL 结构如下所示:

http://www.oldsite.com/about/index.cfm?fuseaction=cor_av&artID=5049

我想将整个子文件夹(名为“about”)重定向到新域上的新页面。新域的 URL 如下所示:

http://www.newsite.com/info

因此,我设置了一个如下所示的重定向:

redirectMatch 301 ^/about/ http://www.newsite.com/info  

它的重定向很好,但它保留了原始 URL 字符串,因此新 URL 最终在浏览器中看起来像这样:

http://www.newsite.com/info/?fuseaction=cor_av&artID=5049 

我绝对不是 Apache/301 专家,不知道如何解决这个问题。我只想从 ? 在。

非常感谢任何帮助。

4

2 回答 2

33

两个选项:

redirectMatch 301 ^/about/ http://www.newsite.com/info? 

或者:

RewriteEngine on
RewriteRule ^about/(.*) http://www.newsite.com/info? [L,R=301]

最后的问号似乎是关键位。第二个看起来更干净一些(首先在 URL 的末尾留下一个问号)

于 2012-05-22T19:46:27.540 回答
1

尝试将此代码添加到为.htaccess指定的代码中oldsite.com

RewriteCond %{REQUEST_URI} ^/about/index.cfm$
RewriteRule ^(.+) http://www.newsite.com/info/ [R=301,QSA]

跟进?

于 2013-04-03T18:56:12.723 回答