一、什么是 robots.txt
Robots协议:网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。
协议写在robots.txt文件里面。
二、要不要使用robots.txt
1、如果你的网站有部分内容不希望搜索引擎抓取,那么请设置robots.txt
2、如果你的网站全部内容都需要被搜索引擎抓取,可以不设置。
3、一般来说,一些后台文件(如css、js)、用户隐私的文件不用被搜索引擎抓取。
4、如果有些文件频繁被蜘蛛抓取,但是这些文件又是不重要的,那么可以用robots.txt进行屏蔽。
三、robots 协议规则
User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符
Disallow: /文件夹名称/ 这里定义是禁止爬取这个文件夹下面的目录
Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以”.htm”为后缀的URL(包含子目录)。
Disallow: /*?* 禁止访问网站中所有包含问号 (?) 的网址
Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片
Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。
Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录
Allow: /tmp 这里定义是允许爬寻tmp的整个目录
Allow: .htm$ 仅允许访问以”.htm”为后缀的URL。
Sitemap: 网站地图的URL 告诉爬虫这个页面是网站地图
四、这里是一个 demo
User-agent: SMTBot
Disallow: /
User-agent: AhrefsBot
Disallow: /
User-agent: Cliqzbot
Disallow: /
User-agent: MJ12bot
Disallow: /
User-agent: DomainStatsBot
Disallow: /
User-agent: SemrushBot
Disallow: /
User-agent: SemrushBot-SA
Disallow: /
User-agent: spbot
Disallow: /
User-agent: *
Allow: /
Disallow: /images/
Disallow: /articletype/
Disallow: /article/
Disallow: /user/
Disallow: /cart/
Disallow: /*.php
Disallow: /comment/list/*
Allow: /comment/list/$
Sitemap: /sitemap.xml
五、robots.txt具体用途
1、一个页面对应多个URL时,应屏蔽多余的URL。
2、如果网站有页面是没有实质性内容的,应该屏蔽掉。
3、如果网站改版删除了大量的页面(404),应该屏蔽掉。
4、如果是UGC网站,用户产生了大量的不良内容,应该屏蔽掉。
5、不希望被搜索引擎索引的内容(后台界面、用户隐私),应该屏蔽掉。