我正在网站上修复网址,其中一个问题是网址包含的字符有时是大写的,而其他时候是小写的,服务器并不关心它,但google做了,并编入索引这些页面是重复的。 还有一些网址包含的字符根本不允许在URL的那一部分,例如逗号“,”和括号“()”虽然[圆括号在技术上不保留] [1] 我仍然决定通过对它们进行编码来摆脱它们。
我添加了一张支票,用于检查网址是否有效,如果没有,则会将301重定向到正确的网址。
例如,http://www.example.com/articles/SomeGreatArticle(2012).html 会做301重定向 http://www.example.com/articles/somegreatarticle%282012%29.html
它有效,并且它会重定向到正确的URL。
但是对于一小部分网页(可能是google目前已编入索引的唯一网页)google网站管理员工具开始在抓取错误>下给我以下错误没有按照标签:
用引号搜索这个错误给我0结果,我确信我不是唯一一个得到这个错误的人,所以我想知道更多关于它的信息,例如:Google无法关注您的网址,因为它重定向过多 次。
答案 0 :(得分:3)
<强>解强>
根据此实验http://www.monperrus.net/martin/google+url+encoding
Google拥有自己的字符编码规则,google将始终对某些字符进行编码,并始终对其他字符进行解码。
以下字符永远不会被编码
-,.@~_*)!$'(
所以即使你给谷歌这个网址
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
我的服务器会执行301重定向到
http://www.example.com/articles/somegreatarticle%282012%29.html
虽然Googlebot会忽略编码的括号并按照:
http://www.example.com/articles/somegreatarticle(2012).html
重定向到
http://www.example.com/articles/somegreatarticle%282012%29.html
的后续
http://www.example.com/articles/somegreatarticle(2012).html
重定向到
http://www.example.com/articles/somegreatarticle%282012%29.html
并在几次尝试后放弃并显示“ Google无法关注您的网址,因为它重定向次数”错误。
答案 1 :(得分:0)
我不了解Google网站管理员工具,但是当有无限循环的重定向时,我在PHP中看到了类似的错误。确保没有任何页面重定向到自身。
答案 2 :(得分:0)
首先,我会删除()和网址上的标志,这是事实,googlebot更难以使用这些。他们也没有为SEO目的做任何好处。 客户端的可读性不是问题所以,如果我只使用 - 或_破折号。 尽量不要在文件/文件夹名称中使用任何其他字符。
你还应该清理你的html,还有一些错误和问题需要解决。
更清洁的来源更适合谷歌,浏览器和访问者。
我找不到谷歌会遇到任何问题的明确问题。