认识“X-Robots-Tag”HTTP标头
一般情况,我们使用robots.txt文件来告知搜索引擎哪些文件/文件夹允许爬网或禁止爬网,还有X-Robot…
一般情况,我们使用robots.txt
文件来告知搜索引擎哪些文件/文件夹允许爬网或禁止爬网,还有X-Robots-Tag HTTP标头之类的东西,你知道吗?使用此功能对搜索引擎和网站服务器都有好处,通过禁止对网站某些不重要区域的爬网访问,可以减少服务器负载。
在继续之前,先了解一下robots.txt
文件的作用。简单来讲,它的作用是告诉搜索引擎不要爬网网站上的特定页面,文件或目录等。
不建议通过robots.txt
屏蔽整个网站,除非是一个非常私密的网站。
X-Robots-Tag
早在2007年,Google宣布增加了对X-Robots-Tag指令的支持,这意味着不仅可以通过robots.txt文件限制对搜索引擎的访问,还可以通过编程方式在HTTP响应的标头中设置各种与robot.txt相关的指令。
X-Robots-Tag指令
有两种不同类型的指令:搜寻器指令和索引器指令,本文将在下面简要说明差异。
搜寻器指令
robots.txt
文件仅包含“搜寻器指令”,该指令会告诉搜索引擎允许或不允许它们进入的位置。通过使用此指令,可以指定允许搜索引擎进行爬网的位置:
Allow
该指令的作用正好相反(禁止爬网):
Disallow
此外,可以使用以下指令来帮助搜索引擎更快地抓取网站(提交网站地图):
Sitemap
请注意,还可以通过结合使用以下指令,来指定不同搜索引擎的指令:
User-agent
不过有时候即使用Disallow
禁止了某些资源还是可能出现在搜索引擎结果中,说明仅仅使用robots.txt
是不够的。
索引器指令
索引器指令是基于每页和/或每个元素设置的指令。截止到2007年7月,有两个指令:rel =“ nofollow”
(表示该链接不应通过授权/ PageRank)与Meta Robots标记。
使用Meta Robots标记,可以真正阻止搜索引擎显示想保留在搜索结果之外的页面。使用X-Robots-Tag HTTP标头可以达到相同的结果。如前所述,X-Robots-Tag还允许控制如何索引特定文件(类型),从而提供了更大的灵活性。
X-Robots-Tag的用法示例
如果要防止搜索引擎显示使用PHP生成的文件,可以在header.php(WordPress)文件的开头添加以下内容:
header("X-Robots-Tag: noindex", true);
如果要组织搜索引擎跟踪这些页面上的链接,可以按以下示例:
header("X-Robots-Tag: noindex, nofollow", true);
现在,尽管在PHP中使用此方法非常方便,如果希望阻止PHP之外的一些特定的文件类型,更好的方法是将X-Robots-Tag添加到Nginx/Apache服务器配置或.htaccess文件中。
假如一个提供.doc文件的网站,但由于特定的原因,不希望搜索引擎为该文件类型建立索引,则可以使用X-Robots-Tag。在Apache服务器上,应将以下行添加到/ .htaccess
文件中:
<FilesMatch ".doc$">
Header set X-Robots-Tag "noindex, noarchive, nosnippet"
</FilesMatch>
如果想对.doc和.pdf文件都这样做:
<FilesMatch ".(doc|pdf)$">
Header set X-Robots-Tag "noindex, noarchive, nosnippet"
</FilesMatch>
如果运行的是Nginx而非Apache,则可以通过在服务器配置中添加以下内容来获得一样的效果:
location ~* .(doc|pdf)$ {
add_header X-Robots-Tag "noindex, noarchive, nosnippet";
}
结论
从上面的示例可以看到,X-Robots-Tag HTTP标头是一个非常强大的工具,可以和robots.txt
搭配使用,效果更佳。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
评论功能已经关闭!