【问题标题】:Htaccess ReWrite URL with ? in duplicate URL'sHtaccess 用 ? 重写 URL在重复的网址中
【发布时间】:2012-09-12 19:09:24
【问题描述】:

我们已从 IIS 迁移到 Apache,并使用以下重写规则将 www.example.co.uk/Default.aspx?pagename=About-Us 重定向到新页面 url www.example.co.uk/About-我们/

RewriteCond %{REQUEST_URI} ^/Default\.aspx$
RewriteCond %{QUERY_STRING} ^pagename=About-Us$
RewriteRule ^(.*)$  http://www.domain.co.uk/About-Us/ [R=301,L]

问题是这条规则在谷歌 WMT 中显示为重复的内容,并且页面正在两个 URL 中提供...

谁能发现这条规则有什么问题?

【问题讨论】:

    标签: apache .htaccess mod-rewrite redirect http-status-code-301


    【解决方案1】:

    把你的规则改成这样:

    RewriteCond %{QUERY_STRING} ^pagename=About-Us$ [NC]
    RewriteRule ^Default\.aspx$  http://www.domain.co.uk/About-Us/? [R=301,L,NC]
    

    另请注意,搜索机器人需要一些时间才能删除重复的 URI。

    【讨论】:

    • 是什么?最后做 - 谢谢。
    • 它从目标 URI 中删除原始查询字符串。
    猜你喜欢
    • 2015-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-23
    • 2016-10-29
    • 1970-01-01
    • 1970-01-01
    • 2017-01-26
    相关资源
    最近更新 更多