有没有办法阻止谷歌索引一个网站?
9 回答
机器人.txt
User-agent: *
Disallow: /
这将阻止所有搜索机器人编制索引。
有关详细信息,请参阅: http ://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=40360
我必须在这里添加我的答案,因为接受的答案并没有真正正确地解决问题。另请记住,阻止 Google 抓取并不意味着您可以将内容保密。
我的回答基于几个来源:https ://developers.google.com/webmasters/control-crawl-index/docs/getting_started https://sites.google.com/site/webmasterhelpforum/en/faq--crawling- -索引---排名
robots.txt
文件控制抓取,但不索引!这两个是完全不同的动作,分别执行。有些页面可能被爬取但没有被索引,有些甚至可能被索引但从未被爬取。未爬取页面的链接可能存在于其他网站,这将使谷歌索引器跟踪它,并尝试索引。
问题是关于索引,它正在收集有关页面的数据,因此它可以通过搜索结果获得。可以阻止添加元标记:
<meta name="robots" content="noindex" />
或将 HTTP 标头添加到响应中:
X-Robots-Tag: noindex
如果问题是关于爬行,那么您当然可以创建robots.txt
文件并输入以下行:
User-agent: *
Disallow: /
抓取是为收集有关特定网站结构的信息而执行的操作。例如,您通过 Google 网站管理员工具添加了网站。爬虫会考虑到它,并访问您的网站,搜索robots.txt
. 如果它没有找到任何东西,那么它将假设它可以抓取任何东西(拥有sitemap.xml
文件也非常重要,以帮助进行此操作,并指定优先级并定义更改频率)。如果它找到文件,它将遵循规则。成功抓取后,它会在某个时候为抓取的页面运行索引,但你不知道什么时候......
重要提示:这一切都意味着您的网页仍然可以显示在 Google 搜索结果中robots.txt
。
我希望至少有一些用户会阅读这个答案并清楚地知道,因为了解实际发生的情况至关重要。
有几种方法可以阻止爬虫,包括谷歌停止爬取和索引您的网站。
在服务器级别通过标头
Header set X-Robots-Tag "noindex, nofollow"
在根域级别通过 robots.txt 文件
User-agent: *
Disallow: /
通过机器人元标记在页面级别
<meta name="robots" content="nofollow" />
但是,我必须说,如果您的网站已经过时而不是现有页面/网址,那么您应该等待某个时间谷歌会在下次抓取时自动取消这些网址的索引 - 阅读https://support.google.com/webmasters/answer/1663419?hl =zh
您可以通过在 apache conf 中全局添加以下设置来禁用此服务器范围,或者可以在 vhost 中使用相同的参数仅对特定 vhost 禁用它。
标题集 X-Robots-Tag “noindex, nofollow”
完成此操作后,您可以通过验证返回的 apache 标头来对其进行测试。
curl -I staging.mywebsite.com HTTP/1.1 302 发现日期:2016 年 11 月 26 日星期六 22:36:33 GMT 服务器:Apache/2.4.18 (Ubuntu) 位置:/pages/ X-Robots-Tag:noindex,nofollow内容类型:文本/html;字符集=UTF-8
请记住,尽管微软声称遵守 robots.txt,但微软的必应爬虫并不总是这样做。
我们的服务器统计数据表明,他们有许多 IP 运行不遵守 robots.txt 的爬虫,也有一些运行不遵守 robots.txt 的爬虫。
我使用一个简单的 aspx 页面将结果从谷歌中继到我的浏览器,使用一个虚假的“Pref”cookie 一次获得 100 个结果,我不想让谷歌看到这个中继页面,所以我检查了 IP 地址,如果它开始使用 66.249 然后我只需进行重定向。
如果您重视隐私并想要一份副本,请单击我的名字。
我使用的另一个技巧是让一些 javascript 调用页面以在会话中设置标志,因为大多数(不是全部)网络机器人不执行 javascript,所以你知道它是关闭了 javascript 的浏览器,或者是更多一个机器人。
您也可以通过这种方式添加元机器人:
<head>
<title>...</title>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
</head>
另一个额外的层是修改.htaccess,但你需要深入检查它。
使用 nofollow 元标记:
<meta name="robots" content="nofollow" />
要在链接级别指定 nofollow,请将值为 nofollow 的属性 rel 添加到链接:
<a href="example.html" rel="nofollow" />
有没有办法阻止谷歌索引一个网站?
要阻止 Google 抓取,只需将以下meta
标签添加到head
每个页面:
<meta name="googlebot" content="noindex, nofollow">