我想到的唯一想法是使用CAPTCHA。但是,我想知道是否有魔术词告诉搜索引擎不要为链接和PDF文档编制索引?使用PHP或JavaScript的选项也可以。
请明确说明。我不想加密PDF并用密码保护它。我只想使其对搜索引擎不可见,但对用户不可见。
#1 楼
为了防止您的PDF文件(或任何非HTML文件)在搜索结果中列出,唯一的方法是使用HTTPX-Robots-Tag
响应标头,例如:X-Robots-Tag: noindex
您可以通过在网站的根.htaccess文件或httpd.conf文件中添加以下代码段来做到这一点:能够修改相关文件的HTTP标头。因此,例如在GitHub Pages上,您可能无法执行此操作。
还要注意,robots.txt不会阻止您的页面在搜索结果中列出。
它的作用是阻止bot抓取您的页面,但是如果第三方从其网站链接到您的PDF文件,您的页面仍将列出。您可以使用robots.txt阻止漫游器抓取您的网页,它将无法看到
X-Robots-Tag: noindex
响应标签。因此,如果您使用X-Robots-Tag
标头,则永远不要禁止robots.txt中的页面。可以在Google Developers:Robots Meta Tag中找到更多信息。评论
如果以后再请求带有X-Robots-Tag的页面,我不会遵循带有该页面条目的robots.txt如何防止X-Robots-Tag受到尊重/服从的情况。
–唐·奇德尔(Don Cheadle)
16/12/22在4:56
我认为当请求页面时,它(“ Google”)会看到X-Robots-Tag标头,然后知道不对其进行索引...但是看起来X-Robots-Tag仅对爬虫有用然后知道不为它编制索引developer.google.com/webmasters/control-crawl-index/docs/…
–唐·奇德尔(Don Cheadle)
16 Dec 22'在5:03
由于使用的是启用了regex的Files指令,因此应考虑改为使用FilesMatch,如此处建议stackoverflow.com/q/14792381/1262357
– Gruber
19年1月6日在5:37
@Gruber尽管首先不需要在此处使用“启用正则表达式的Files指令”。带有通配符的普通
–怀特先生
20 Dec 1'在15:24
#2 楼
有多种方法可以做到这一点(将它们组合起来显然是完成此任务的肯定方法):1)使用robots.txt阻止来自搜索引擎抓取工具的文件:
User-agent: *
Disallow: /pdfs/ # Block the /pdfs/directory.
Disallow: *.pdf # Block pdf files. Non-standard but works for major search engines.
2)在指向这些PDF的链接上使用
rel="nofollow"
<a href="something.pdf" rel="nofollow">Download PDF</a>
3)使用
x-robots-tag: noindex
HTTP标头可防止搜寻器为它们建立索引。将此代码放在您的.htaccess文件中:<FilesMatch "\.pdf$">
header set x-robots-tag: noindex
</FilesMatch>
评论
违反直觉的是,同时使用x-robots-tag和robots.txt并不是一个好主意,并且可能仍然导致对内容进行索引。如果您同时使用robots.txt和x-robots-tag:noindex,则抓取工具将永远不会抓取或看到x-robots-tag,因为它首先尊重robots.txt。 robots.txt不会阻止对资源进行索引,而只能阻止对资源进行索引,因此最好的解决方案是使用x-robots-tag标头,但允许搜索引擎通过不使用robots.txt进行爬网并找到该标头。
– Maximillian Laumeister
18/12/6在5:09
#3 楼
您可以使用robots.txt文件。您可以在这里阅读更多内容。评论
使用robots.txt不会阻止编制索引。它仅防止爬网。请参阅Pacerier的答案以获取正确的解决方案。
–毒药
13年11月25日在15:48
#4 楼
不确定此基石是否可以为任何人带来价值,但是我们最近遇到了一个问题,即我们的本地GSA框不愿意为PDF文件编制索引。Google支持部门解决了该问题,他们的答复是该PDF文档具有自定义属性集(“文件”->“文档属性”->“自定义”(标签))
name: robots
value: noindex
,这使它无法被GSA正确编入索引。租用GSA。
#5 楼
如果您使用nginx支持的开发实例显示在Google搜索结果中,则有一种快速简便的方法来阻止搜索引擎抓取您的网站。将以下行添加到您要防止爬网的虚拟主机配置文件的位置块中。#6 楼
您可以使用robots.txt文件。支持该文件的搜索引擎将不会为PDF编制索引。只需使用命令禁止对文件建立索引,并指定您不希望搜索引擎为哪个文件夹或PDF文件建立索引。评论
使用robots.txt不会阻止编制索引。它仅防止爬网。请参阅Pacerier的答案以获取正确的解决方案。我最近确实读过有关在robots.txt文件中使用noindex指令(而不是禁止使用)的信息,但这是未记录且非标准的。现在我找不到我在哪里读它了。
–毒药
2013年11月25日15:57
我们有一个问题:robots.txt中的“ Noindex:”如何工作?
–斯蒂芬·奥斯特米勒(Stephen Ostermiller)
16 Mar 24 '16 at 11:38
评论
如果要阻止对特定文件编制索引,请参阅以下问题:webmasters.stackexchange.com/questions/132337/…