Redirect 谷歌不能';不要跟随你的URL,因为它重定向了太多次

Redirect 谷歌不能';不要跟随你的URL,因为它重定向了太多次,redirect,http-status-code-301,google-webmaster-tools,Redirect,Http Status Code 301,Google Webmaster Tools,我在修复一个网站上的url,其中一个问题是url包含的字符有时是大写的,有时是小写的,服务器不关心它,但谷歌关心它,并将页面索引为重复的。 此外,一些URL包含的字符不允许出现在URL的该部分,如逗号“,”和括号“()”,尽管[圆括号在技术上不保留][1] 我仍然决定通过编码来摆脱它们 我添加了一个检查,检查url是否有效,如果无效,将执行301重定向到正确的url 比如说 将301重定向到 它可以工作,并且可以重定向到正确的url 但对于一小部分页面(可能是谷歌迄今为止索引的唯一页面),谷歌

我在修复一个网站上的url,其中一个问题是url包含的字符有时是大写的,有时是小写的,服务器不关心它,但谷歌关心它,并将页面索引为重复的。 此外,一些URL包含的字符不允许出现在URL的该部分,如逗号“,”和括号“()”,尽管[圆括号在技术上不保留][1] 我仍然决定通过编码来摆脱它们

我添加了一个检查,检查url是否有效,如果无效,将执行301重定向到正确的url

比如说 将301重定向到

它可以工作,并且可以重定向到正确的url

但对于一小部分页面(可能是谷歌迄今为止索引的唯一页面),谷歌网站管理员工具开始在“爬行错误>未遵循”选项卡下向我显示以下错误:

谷歌无法跟踪你的URL,因为它重定向了太多 时代

用引号搜索此错误会给我0个结果,我确信我不是唯一一个出现此错误的人,因此我想了解更多有关此错误的信息,例如:

  • 在谷歌认为一个页面太多之前,一个页面可以做多少次重定向
  • 这种错误的其他可能原因是什么

  • 我不知道GoogleWebmaster工具,但我在PHP中看到了类似的错误,当存在无限重定向循环时。确保所有页面都没有重定向到自身。

    首先,我会删除URL中的()和符号,事实上,Google Bot处理这些页面比较困难。他们也不会为SEO目的带来任何好处。 客户机的可读性不是一个问题,因此如果我想知道,您只需使用-或u破折号。 尽量不要在文件/文件夹名称中使用任何其他字符

    你也应该清理你的html,有相当多的错误和问题需要解决

    一个更干净的资源对于谷歌、浏览器和你的访问者来说是更好的


    我找不到任何谷歌会有问题的明确问题。

    解决方案

    根据这个实验

    谷歌有自己的字符编码规则,谷歌总是对一些字符进行编码,对另一些进行解码

    以下字符从不进行编码

    -,.@~_*)!$'(
    
    所以即使你给谷歌这个网址

    http://www.example.com/articles/somegreatarticle%282012%29.html 
    
    在圆括号()被编码的地方,谷歌将转换此URL,解码括号,然后跟随此URL:

    http://www.example.com/articles/somegreatarticle(2012).html
    
    在我的情况下发生了什么:

    http://www.example.com/articles/somegreatarticle(2012).html
    
    我的服务器将执行301重定向到

    http://www.example.com/articles/somegreatarticle%282012%29.html 
    
    而谷歌机器人将忽略编码的括号,并遵循:

    http://www.example.com/articles/somegreatarticle(2012).html
    
    http://www.example.com/articles/somegreatarticle(2012).html
    
    重定向到

    http://www.example.com/articles/somegreatarticle%282012%29.html
    
    http://www.example.com/articles/somegreatarticle%282012%29.html
    
    跟随

    重定向到

    http://www.example.com/articles/somegreatarticle%282012%29.html
    
    http://www.example.com/articles/somegreatarticle%282012%29.html
    

    在几次尝试后放弃,并显示“谷歌无法跟踪你的URL,因为它重定向了太多次”错误。

    在浏览器中打开页面可以正常工作,我不知道谷歌是如何获得无限循环的。更多信息和导致此错误的页面将有助于确定问题。@ErikdR添加了链接,你想知道什么样的信息?查找信息清理整个网站是一项艰巨的工作,所以我一步一步地做,我现在正在移除支架。我想知道为什么谷歌在重定向方面有问题。你的.htaccess中有什么特别的设置,比如301重定向吗?它不是apache服务器,它使用的是nginx,这是一个好问题,我明天会检查。尽管我怀疑是否有专门针对搜索引擎的东西。另外,我不会在普通浏览器中看到重定向吗?如果是.htaccess重定向或类似的重定向,则不会。服务器将捕获url并将您发送到正确的url。