Search engine Google crawler找到robots.txt,但可以';我不能下载它
谁能告诉我这个robots.txt有什么问题吗 以下是我在Google网站管理员工具中遇到的错误:Search engine Google crawler找到robots.txt,但可以';我不能下载它,search-engine,search-engine-bots,Search Engine,Search Engine Bots,谁能告诉我这个robots.txt有什么问题吗 以下是我在Google网站管理员工具中遇到的错误: Sitemap errors and warnings Line Status Details Errors - Network unreachable: robots.txt unreachable We were unable to crawl your Sitemap because we found a robots.txt file at the root of you
Sitemap errors and warnings
Line Status Details
Errors -
Network unreachable: robots.txt unreachable
We were unable to crawl your Sitemap because we found a robots.txt file at the root of
your site but were unable to download it. Please ensure that it is accessible or remove
it completely.
实际上,上面的链接是一个路径的映射,该路径通过一个动作机器人。该操作从存储器中获取文件,并以文本/纯文本形式返回内容。谷歌表示他们无法下载该文件。是因为这个吗?生成robots.txt文件的脚本有问题。当GoogleBot访问该文件时,它收到
500内部服务器错误
。以下是标题检查的结果:
REQUESTING: http://bizup.cloudapp.net/robots.txt
GET /robots.txt HTTP/1.1
Connection: Keep-Alive
Keep-Alive: 300
Accept:*/*
Host: bizup.cloudapp.net
Accept-Language: en-us
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
SERVER RESPONSE: 500 INTERNAL SERVER ERROR
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Thu, 19 Aug 2010 16:52:09 GMT
Content-Length: 4228
Final Destination Page
请求:http://bizup.cloudapp.net/robots.txt
GET/robots.txt HTTP/1.1
连接:保持活力
活命:300
接受:*/*
主持人:bizup.cloudapp.net
接受语言:en us
接受编码:gzip,deflate
用户代理:Mozilla/5.0(兼容;Googlebot/2.1+http://www.google.com/bot.html)
服务器响应:500内部服务器错误
缓存控制:专用
内容类型:text/html;字符集=utf-8
服务器:Microsoft IIS/7.0
X-AspNet-Version:4.0.30319
X-Powered-By:ASP.NET
日期:2010年8月19日星期四格林威治标准时间16:52:09
内容长度:4228
最终目的页
您可以在这里测试标题获取robots.txt没有问题
User-agent: *
Allow: /
Sitemap: http://bizup.cloudapp.net/robots.txt
但是,它不是在执行递归robots.txt调用吗
站点地图应该是一个xml文件,请参见它看起来像是在读取robots.txt,但robots.txt随后声称这也是xml站点地图的URL,而实际上是。错误似乎来自谷歌试图将robots.txt解析为XML站点地图。您需要将robots.txt更改为
User-agent: *
Allow: /
Sitemap: http://bizup.cloudapp.net/sitemap.xml
编辑
它实际上比这更深一层,谷歌机器人根本无法在你的网站上下载任何页面。以下是Googlebot请求robots.txt或主页时返回的异常:
此应用程序不支持无Cookieless表单身份验证。
异常详细信息:System.Web.HttpException:Cookieless表单身份验证
此应用程序不支持
FormsAuthentication尝试使用无Cookie模式,因为它识别出Google机器人不支持Cookie,但FormsAuthentication\u OnAuthenticate方法中的某些内容随后抛出异常,因为它不想接受无Cookie身份验证
我认为最简单的解决方法是在web.config中更改以下内容,这将阻止FormsAuthentication尝试使用无Cookie模式
<authentication mode="Forms">
<forms cookieless="UseCookies" ...>
...
...
我用一种简单的方法解决了这个问题:只需添加一个robot.txt文件(与我的index.html文件位于同一目录中),即可允许所有访问。我把它漏掉了,打算通过这种方式允许所有的访问——但也许谷歌网站管理员工具找到了另一个由我的ISP控制的robot.txt
因此,似乎至少对某些ISP来说,即使您不想排除任何机器人,您也应该有一个robot.txt文件,以防止出现这种可能的故障。现在看来这是一个答案!我说的很有道理,我现在就去看看+1您是如何看到异常的?我一直在尝试一些所谓的Googlebot模拟器,但这个例外并没有发生。一些Googlebot模拟器使用旧版本Googlebot的头文件,出于某种原因,只有最新版本才会导致这个问题。谷歌的网站管理员工具在实验室里有一个“作为谷歌机器人抓取”功能,你可以假设它总是与真正的谷歌机器人相匹配。一旦您知道了要发送的正确头,Fiddler就允许您手工编写HTTP请求并检查响应,因此我从Shaji的答案中复制了请求头以查看返回的内容。)好吧,看来它现在起作用了。网站地图已经在网站管理员工具和我的谷歌定制搜索引擎中按需提交。谢谢!我相信这个没有烹饪的东西节省了我几个小时的研究!是的,出了点问题。史蒂夫马格森帮了我。谢谢是的,我已经知道了,但这是我的一个错误。谢谢1+
<authentication mode="Forms">
<forms cookieless="UseCookies" ...>
...