Robots.txt文件使用技巧
SEOer应该对robots.txt文件并不陌生,它是每一个搜索引擎蜘蛛到你的网站之后要寻找和访问的第一个文件,robots.txt是你对搜索引擎制定的一个如何索引你的网站的规则。通过该文件,搜索引擎就可以知道在你的网站中哪些文件是可以被索引的,哪些文件是被拒绝索引的,这样我们就可以很方便地控制搜索引擎索引网站内容了。
一、robots.txt文件的作用:
1、屏蔽网站内的死链接。
2、屏蔽搜索引擎蜘蛛抓取站点内重复内容和页面。
3、阻止搜索引擎索引网站隐私性的内容。
网站中重复的内容、页面或者404信息过多,搜索引擎蜘蛛就会认为该网站价值较低,从而降低对该网站的“印象分”,这就是我们经常听到的“降低权重”,因此通过建立robots.txt文件给蜘蛛“指路”是很有必要的。
二、robots.txt文件注意事项:
1、必须放置在一个站点的根目录下;
2、文件名必须全部小写;
3、最好是UTF-8编码。
三、robots.txt文件的基本语法:
第一条是:User-agent,搜索引擎蜘蛛的名称;常见蜘蛛名称见文末。
第二条是:Disallow,要拦截的部分,禁止蜘蛛访问的部分。
第三条是:Allow,放行的部分,允许蜘蛛访问的部分。
第四条是:Sitemap,网站地图索引文件。
四、robots.txt使用要点
首先我们来介绍Robots.txt的使用要点:
1、每个域名(不管是不是子域名)都只能最多有一个Robots.txt文件,放置于网站根目录。yourname.com的Robots.txt对www.yourname.com没有约束;
2、每种http协议都可以有一个Robots.txt。如http://yourname.com和https://yourname.com可以分别有一个Robots.txt;
3、每个端口可以有一个Robots.txt。如http://yourname.com和http://yourname.com:8080可以分别有一个Robots.txt;
4、文件名必须为小写。不能是RoBots.TXT;
5、user-agent的名称以及user-agent,allow,disallow,crawl-delay,sitemap这些指示符的大小写不敏感;
6、Robots.txt所包含的URL为大小写敏感。分清大小写才能有效排除索引;allow和disallow的URL必须是不包括协议、域名、端口的路径。
7、使用相对路径,不能使用绝对路径。disallow: http://yourname.com/index.htm就错了。改为disallow:/index.htm才是正确的;
8、sitemap必须包括从HTTP或HTTPS开始的完整的URL。
9、Robots.txt不是死链提交工具,想要删除死链索引还是应该登陆各搜索引擎站长平台提交。
10、Robots.txt只做减法,有没有这个文件的区别即是去不去做这个排除。删除Robots.txt等于告诉搜索引擎完全开放蜘蛛爬行你的网站。
11、符号#用于注释。后面的内容会被忽略。
五、多个User-Agent合并
如果有多个垃圾蜘蛛在抓取你的网页,就会消耗你服务器的资源,那么你可能会通过disallow屏蔽他们,也可以通过user-agent一次性把他们屏蔽。
例如:
User-agent: bad-bot-a User-agent: bad-bot-b Disallow: /
这种写法在当你有多个user-agent,每个虽然都比较复杂但是都一样的情况下显得很有用。
User-agent: bad-bot-a User-agent: bad-bot-b Disallow: /XXX
使用通配符*
这里要说的是通配符*。它代表任意长度的任意字符。请注意每一行allow,disallow之后都有一个看不见的*。
也就是说如果你写了disallow: /seo/,那么下面的内容就会影响到所有以/seo/开头的URL,比如:
http://yourname.com/seo/post1.htm http://yourname.com/seo/post1.html http://yourname.com/seo/post/
六、为不同的User-Agent订制Sitemap
对Sitemap来说,它并不针对某一个user-agent。不管你的Sitemap语句出现在哪里它对所有的搜索引擎都是有效的。
如果我们想让某些搜索引擎只访问特定的sitemap,这种情况下该如何处理呢?除了在站长平台提交网站地图,我们还可以在robots.txt内实现。我们一样可以用disallow去屏蔽掉。假定我们有一个谷歌sitemap-google.xml还有一个针对百度的sitemap-baidu.xml。我们可以这样实现:
User-agent: Googlebot Disallow: /sitemap-baidu.xml #屏蔽谷歌蜘蛛对sitemap-baidu.xml的抓取 User-agent: baiduspider Disallow: /sitemap-google.xml #屏蔽百度蜘蛛对sitemap-google.xml的抓取 Sitemap: http://yourdomain.com/sitemap-google.xml Sitemap: http://yourdomain.com/sitemap-baidu.xml
这样一来谷歌的蜘蛛就不会访问sitemap-baidu.xml文件。百度的蜘蛛只能抓取sitemap-baidu.xml的内容,就可以实现针对不同的搜索引擎提交网站地图了。
七、Sitemap太大了该怎么办?
我们知道,一般来说搜索引擎对站点地图的大小和所包含的URL的数量都有所限制。比如百度对单个sitemap文件的限制是五万条URL和10MB的文件大小。在这种情况下,你可以在Robots.txt中给出多个sitemap文件的URL。除了这种分拆方式,你还可以使用sitemap索引文件。
你可以为多个站点地图制作索引,索引格式如下:
<?xml version="1.0" encoding="utf-8"?> <!-- XML文件需以utf-8编码--> <sitemapindex> <!--必填,以 <sitemapindex> 开始标记作为开始,以 </sitemapindex> 结束标记作为结束--> <sitemap> <!--必填,以<sitemap>标签提交一个子sitemap文件--> <loc>http://example.com/ext/xmlsitemap/add/201201/index_20120106.xml</loc> <!--必填,识别sitemap的位置--> <lastmod>2009-12-14</lastmod> <!--选填,识别相对sitemap文件的修改时间--> </sitemap> <!--必填,标签闭合--> </sitemapindex> <!--必填,标签闭合-->
有多个Sitemap,按上述格式重复<sitemap></sitemap>之间的片段,列明所有Sitemap地址,向站长平台进行提交。其他主流的搜索引擎也认这个索引格式。
附录:常见各大搜索引擎蜘蛛名称:
1、百度蜘蛛:Baiduspider
看网上的资料百度蜘蛛名称有BaiduSpider、baiduspider等。百度蜘蛛最新名称为Baiduspider。日志中还发现了Baiduspider-image这个百度旗下蜘蛛,是抓取图片的蜘蛛。
常见百度旗下同类型蜘蛛还有下面这些:Baiduspider-image(抓取图片)、Baiduspider-video(抓取视频)、Baiduspider-news(抓取新闻)、Baiduspider-mobile(抓取wap)、Baiduspider-render/2.0(抓取css,js)。
2、谷歌蜘蛛:Googlebot
谷歌蜘蛛最新名称为Googlebot。还发现了Googlebot-Mobile,看名字是抓取wap内容的。
3、360蜘蛛:360Spider
4、SOSO蜘蛛:Sosospider
5、雅虎蜘蛛:Yahoo!SlurpChina
6、有道蜘蛛:YoudaoBot,YodaoBot(两个都有)
7、搜狗蜘蛛:Sogou News Spider
搜狗蜘蛛还包括如下这些:Sogou web spider、Sogou inst spider、Sogou spider2、Sogou
blog、Sogou News Spider、Sogou Orion spider,阿修在日志中只发现了其中的Sogou News
Spider。(参考别人的robots文件,搜狗蜘蛛名称可以用Sogou概括)
8、MSN蜘蛛:msnbot,msnbot-media
9、必应蜘蛛:bingbot
10、一搜蜘蛛:YisouSpider
11、Alexa蜘蛛:ia_archiver
12、宜搜蜘蛛:EasouSpider
13、即刻蜘蛛:JikeSpider
上面就是Robots.txt在实际网站SEO优化中总结的应用技巧,您可以根据这个技巧对你的网站进行设置。
- 本文标题:Robots.txt文件使用技巧
- 本文地址:https://www.seoserp.cn/html/1721.html
- 本建站运维版权归原创作者所有,与本站立场无关。转载请注明出处。