1

谁能帮我disallow在我的文件中添加一条规则,该规则robots.txt将阻止爬虫索引任何包含%2C逗号HTML URL encoding(,)的链接。

如果 robots.txt 文件中存在通配符,我想我正在寻找的是通配符。

到目前为止,我有这个:

Disallow: %2C

但似乎看不到它的工作原理。

有什么建议么?干杯

4

1 回答 1

4

针对搜索引擎测试 robots.txt 时最好的办法是利用它们提供给您的工具。Google 网站管理员工具在“健康 > 阻止的 URL”下有一个 robots.txt 测试器。如果你使用

User-agent: *
Disallow: *,*

这将阻止对http://example.com/url%2Cpath/的任何请求。我试过Disallow: *%2C*了,但显然这并没有阻止 Googlebot 抓取 HTML 转义路径。我的猜测是 Googlebot 在排队过程中对其进行了编码。

至于 bing,他们显然删除了 robots.txt 验证工具。所以真正测试它的唯一可靠方法是在测试站点上部署 robots.txt,然后使用 Bing 网站管理员工具获取带有“,”的页面。它会在那时告诉你它是否被 robots.txt 阻止。

请记住,使用 robots.txt 时,这不会阻止搜索引擎在搜索结果中显示 URL。它只是阻止他们抓取 URL。如果您只是不希望在搜索结果中出现这些类型的 URL,但不介意它们抓取页面(这意味着您不能使用 robots.txt 阻止这些 URL),您可以添加元标记或 x-robots - 在 http 标头中使用 NOINDEX 值标记,以防止将其添加到搜索结果中。

关于使用“nofollow”标准的其他评论之一。Nofollow 实际上并没有阻止搜索引擎抓取这些 URL。它更被认为是一种拒绝对该链接到目的地的任何认可的方式。Google 和 Bing 建议使用 nofollow 来指示赞助链接或不受信任的 UGC 链接。

于 2012-09-07T06:11:56.110 回答