【发布时间】:2014-10-18 19:11:37
【问题描述】:
我最近更改了我的 robots.txt 以禁止机器人进行昂贵的搜索 API 查询。除了 /q?... 这是一个搜索 API 查询并且价格昂贵之外,它们现在允许所有其他页面。
User-agent: *
Disallow: /q?
Sitemap: /sitemap.xml.gz
现在我的日志中仍有机器人。它是谷歌还是只是“googlebot 兼容”?如何从 /q 完全禁止机器人?
2014-10-18 21:04:23.474 /q?query=category%3D5030%20and%20cityID%3D4698187&o=4 200 261ms 7kb Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) module=default version=disallow
66.249.79.28 - - [18/Oct/2014:12:04:23 -0700] "GET /q?query=category%3D5030%20and%20cityID%3D4698187&o=4 HTTP/1.1" 200 8005 - "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" ms=261 cpu_ms=108 cpm_usd=0.050895 app_engine_release=1.9.13 instance=00c61b117cdfd20321977d865dd08cef54e2fa
我可以根据我的请求处理程序或我的dos.yaml如果 robots.txt 中的 http 标头将特定机器人列入黑名单吗?当我运行它来查找匹配项时,过去 2 小时有 50 个匹配项:
path:/q.* useragent:.*Googlebot.*
日志行看起来像这样,看起来像 googlebot:
2014-10-19 00:37:34.449 /q?query=category%3D1030%20and%20cityID%3D4752198&o=18 200 138ms 7kb Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) module=default version=disallow
66.249.79.102 - - [18/Oct/2014:15:37:34 -0700] "GET /q?query=category%3D1030%20and%20cityID%3D4752198&o=18 HTTP/1.1" 200 7965 - "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "www.classifiedsmarket.appspot.com" ms=138 cpu_ms=64 cpm_usd=0.050890 app_engine_release=1.9.13 instance=00c61b117c781458f46764c359368330c7d7fdc4
【问题讨论】:
-
旁注:您应该提供full URL to the sitemap。
-
您最近才添加此
Disallow行吗?和/或您之前是否专门针对 Googlebot? -
是的,我发现我的大部分应用程序成本来自使用来自
/q?...的搜索 API,并且 googlebot 正在执行搜索。如果我与之前相比,请求似乎显着减少(自此更改以来应用程序成本显着下降),但它并没有完全消失。 Googlebot 最近请求了新的/robots.txt。直到最近,我才将Disallow更改为允许。我想知道其他程序是否可以模拟 googlebot 并发送相同的 http 标头并忽略 robots.txt 进行查询并将它们伪装成 googlebot 或兼容的。
标签: google-app-engine python-2.7 jinja2 robots.txt webapp2