我有一个页面,其中包含使用this ajaxForm jQuery plugin的表单。表单提交,完成后,使用$ .get()调用一些新内容加载到页面。
我的问题是,Googlebot“似乎”正在为$ .get()方法中的网址编制索引。
我的第一个问题是,甚至可能吗?我的印象是Googlebot大部分都没有评估javascript(我读过一些关于它能够使用!#来为网址上的内容编制索引)。
我的第二个问题是,如果Google正在将此调用编入该网址的索引,是否有办法阻止它?
提前致谢。
答案 0 :(得分:3)
您可以专门robots.txt
该文件,googlebot 将兑现。
User-agent: *
Disallow: /~joe/junk.html
Disallow: /~joe/foo.html
Disallow: /~joe/bar.html
您还可以查看Google的Webmaster Central以从列表中删除该文件。
答案 1 :(得分:2)
首先,您需要检查这是否真的是GoogleBot,因为任何人都可以伪装成GoogleBot,即使是合法用户。
推荐的技术是 执行反向DNS查找,验证 该名称位于googlebot.com 域,然后做一个相应的 转发DNS->使用它进行IP查找 googlebot.com名称。
来自Official Google Webmaster Central Blog: How to verify Googlebot。
答案 2 :(得分:1)
googlebot将inline-javascript中的每个字符串解释为包含“/”或常见文件扩展名(“.html”,“。php”)的URL ...尤其是第一个非常烦人。
混淆您不希望被抓取的内联JS中的每个网址。即:用'|'替换“/”在服务器端并在JS中创建一个替换“|”的包装器方法再次“/”。
是的,这主要是令人讨厌的,并且有更好的方法,即:将所有js放在一个不可抓取的外部文件中。robots.txt解决方案并不是真正的解决方案。因为URL仍然被找到,推送到发现(管道谷歌用来确定接下来要抓取什么),但随后阻止了抓取,这基本上是一个错过的机会。