前几天有站长向我反映,说他的网站在站长帮手网链接检查工具检查链接的时候,提示网页没法打开。
首先,我以为是他的服务器开启了防CC攻击。打开一开,并没有开启防CC攻击,直接服务器上也能正常打开这个网站。
通过本机调试,发现用XMLHTTP组件抓取他的网站首页的时候,始终抓取不到内容,直接输出xmlhttp.responseText也是为空。(通常,网站正常情况下,xmlhttp.responseText肯定有返回内容的,顶多是非UTF-8格式的网页,直接输出会是以乱码的形势显示。)
直接百度搜索他的域名,发现快照日期停留在2012年12月份。
估计百度蜘蛛在抓取他网页的时候,也遇到相同的问题,没能正确抓取到网页内容,导致百度快照停滞不前。
通过分析,我估计是因为他网站编码不正确导致。于是用站长帮手网的HTTP状态查询工具http://i.linkhelper.cn/getheader.asp 看了下他的网站返回的状态,发现了其中问题,他的网页编码竟然是utp-8。
不过查看他网站源代码,确是正确的:<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
不过经验告诉我,他应该是在ASP中用到了response.charset的代码,并且粗心的设置为“response.charset=utp-8”
经过查找源代码,果然发现了response.charset=utp-8这行代码。将utp-8改为utf-8,保存源代码,站长帮手网的链接检查工具能正确的检查他网站的链接了。
等待2天再看,百度快照已经恢复正常。
所以在这里跟各位站长说一下,如果大家发现自己的网站快照一直停留在某个时刻不更新了,可以用站长帮手网的链接检查工具检查下,是否能正确抓取网页检查链接,同时用HTTP状态查询工具查看下网站是否返回了正确的网页编码。