前言Nginx是一个高性能的HTTP和反向代理服务,目前很大一部分网站均使用了Nginx作为WEB服务器,Nginx虽然非常强大,但默认情况下并不能阻挡恶意访问。在开始之前,希望您已经熟悉Nginx常用命令(如停止、重启等操作)及排查Nginx错误日志,以免出现问题不知所措。如无特殊注明,以下的命令均添加到server段内,**修改Nginx配置之前务必做好备份,修改完毕后需要重载一次Nginx否则不会生效。**防止文件被下载比如将网站数据库导出到站点根目录进行备份,很有可能也会被别人下载,从而导致数据丢失的风险。以下规则可以防止一些常规的文件被下载,可根据实际情况增减。location ~ \.(zip|rar|sql|bak|gz|7z)$ { return 444;}屏蔽非常见蜘蛛(爬虫)如果经常分析网站日志你会发现,一些奇怪的UA总是频繁的来访问网站,而这些UA对网站收录毫无意义,反而增加服务器压力,可以直接将其屏蔽。if ($http_user_agent ~* (SemrushBot|python|MJ12bot|AhrefsBot|AhrefsBot|hubspot|opensiteexplorer|leiki|webmeup)) { return 444;}禁止某个目录执行脚本比如网站上传目录,通常存放的都是静态文件,如果因程序验证不严谨被上传木马程序,导致网站被黑。以下规则请根据自身情况改为您自己的目录,需要禁止的脚本后缀也可以自行添加。#uploads|templets|data 这些目录禁止执行PHPlocation ~* ^/(uploads|templets|data)/.*.(php|php5)$ { return 444;}屏蔽某个IP或IP段如果网站被恶意灌水或CC攻击,可从网站日志中分析特征IP,将其IP或IP段进行屏蔽。#屏蔽192.168.5.23这个IPdeny 192.168.5.23;#屏蔽192.168.5.* 这个段denu 192.168.5.0/24;说明再次强调,修改nginx配置之前务必做好备份,修改完毕后需要重载一次nginx,否则不会生效。上面大部分规则返回444状态码而不是403,因为444状态码在nginx中有特殊含义nginx的444状态是直接由服务器中断连接,不会向客户端再返回任何消息,比返回403更加暴力
国内外有很多的网络蜘蛛爬虫,他们在进行爬行的时候会携带自己的user-agent,我们可以通过这个来判断蜘蛛,从而限制蜘蛛对于网站的抓取。而同时也可以用robots.txt文件来对这些蜘蛛进行限制。先来看看国内外搜索蜘蛛的user-agent吧:一、国外爬虫的User-Agent:1、谷歌:Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html)Mozilla/5.0+(Linux;+Android+6.0.1;+Nexus+5X+Build/MMB29P)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/99.0.4844.84+Mobile+Safari/537.36+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html)Googlebot-Image/1.0【谷歌图片】2、bingMozilla/5.0(compatible;bingbot/2.0;+http://www.bing.com/bingbot.htm)2、AhrefsBot:Mozilla/5.0+(compatible;+AhrefsBot/7.0;++http://ahrefs.com/robot/) 3、SemrushBot:Mozilla/5.0+(compatible;+SemrushBot/7~bl;++http://www.semrush.com/bot.html) 4、DotBot:Mozilla/5.0+(compatible;+DotBot/1.2;++https://opensiteexplorer.org/dotbot;+help@moz.com)5、Barkrowler:Mozilla/5.0+(compatible;+Barkrowler/0.9;++https://babbar.tech/crawler)二、国内蜘蛛爬虫的User-Agent:1、百度:Mozilla/5.0+(iPhone;+CPU+iPhone+OS+9_1+like+Mac+OS+X)+AppleWebKit/601.1.46+(KHTML,+like+Gecko)+Version/9.0+Mobile/13B143+Safari/601.1+(compatible;+Baiduspider-render/2.0;++http://www.baidu.com/search/spider.html)2、搜狗搜索Sogou+web+spider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)3、神马搜索Mozilla/5.0+(Windows+NT+6.1;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/69.0.3497.81+YisouSpider/5.0+Safari/537.364、头条搜索:Mozilla/5.0+(Linux;+Android+5.0)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Mobile+Safari/537.36+(compatible;+Bytespider;+https://zhanzhang.toutiao.com/)Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0);5、360搜索Mozilla/5.0(Linux;U;Android4.0.2;en-us;GalaxyNexusBuild/ICL53F)AppleWebKit/534.30(KHTML,likeGecko)Version/4.0MobileSafari/534.30;360SpiderMozilla/5.0(Linux;U;Android4.0.2;en-us;GalaxyNexusBuild/ICL53F)AppleWebKit/534.30(KHTML,likeGecko)Version/4.0MobileSafari/534.30;HaosouSpider您可以通过程序或者服务器判断user-agent来封禁这些蜘蛛。但这种办法肯定也是需要消耗一定的服务器资源,因为在他们抓取的时候,对内容进行封锁,就会难一些。但对于向不同蜘蛛展示不同内容,就可以用程序的方法来做。用robots.txt来怎么封禁蜘蛛呢,我们写了一个,供大家参考:User-agent:MJ12botDisallow:/User-agent:SemrushBotDisallow:/User-agent:SemrushBot-SADisallow:/User-agent:SemrushBot-BADisallow:/User-agent:SemrushBot-SIDisallow:/User-agent:SemrushBot-SWADisallow:/User-agent:SemrushBot-CTDisallow:/User-agent:SemrushBot-BMDisallow:/User-agent:SemrushBot-SEOABDisallow:/user-agent:AhrefsBotDisallow:/User-agent:DotBotDisallow:/User-agent:UptimebotDisallow:/User-agent:MegaIndex.ruDisallow:/User-agent:ZoominfoBotDisallow:/User-agent:Mail.RuDisallow:/User-agent:BLEXBotDisallow:/User-agent:ExtLinksBotDisallow:/User-agent:aiHitBotDisallow:/User-agent:ResearchscanDisallow:/User-agent:DnyzBotDisallow:/User-agent:spbotDisallow:/User-agent:YandexBotDisallow:/User-agent:BarkrowlerDisallow:/以上是封禁国外的几个流氓蜘蛛的代码,并没有封禁像谷歌,bing等搜索引擎,是因为国内有部分用户是使用这些搜索引擎的。而且谷歌影响力比较大,还是希望它能够抓取。User-agent:GooglebotUser-agent:BaiduspiderUser-agent:MSNBotUser-agent:Baiduspider-imageUser-agent:YoudaoBotUser-agent:SogouwebspiderUser-agent:SogouinstspiderUser-agent:Sogouspider2User-agent:SogoublogUser-agent:SogouNewsSpiderUser-agent:SogouOrionspiderUser-agent:ChinasoSpiderUser-agent:SosospiderUser-agent:YisouspiderUser-agent:EasouSpider
互联网行业日益发展,对服务器的要求也越来越高。很多服务器都面临卡顿、迟缓,甚至还有很多服务器出现崩溃宕机的情况。服务器崩溃宕机会给我们的网站带来很多问题,甚至导致源站无法访问,相信很多人都有遇到过这样的问题,那么为什么会出现服务器崩溃的情况呢?小编带您了解服务器无法正常运行的一些原因。1、程序出错现在有很多开发工程师都喜欢用C或C++编写的程序,其实如果C指针出现错误的话,是会到导致操作系统终止所有程序,间接造成服务器系统崩溃的。2、磁盘已满服务器磁盘需要定期清理以确保安全和服务器正常使用的,这是服务器维护的基本操作,当磁盘超出负荷,没有运行空间了,也会导致系统无法正常运行。所以无论是自己维护还是专业人员管理,都需要注意这一问题。服务器出现崩溃主要是什么问题?有哪些预防措施?3、数据库的问题数据库的临时表数量是固定的,且保留了查询的内存。当表格数据被读取将会被释放。但如果出现固定临时表同时查询的情况,那其他的查询请求将被自动排序进行,直到临时表被释放后才能正常运转。4、服务器被攻击现在网络攻击屡有发生,任何网站服务器都面临这样的危险,服务器被攻击造成的崩溃宕机是损失是我们无法估量的。网络攻击我们无法预测,但做好防御措施是必须的,建议所有的网站都要做好防范措施,准备相应的防护预案,以确保出现问题后第一时间恢复使用。5、访问量超出服务器承载范围网站的访问量是不固定的,有时会因为商家促销或一些特殊节点,流量峰值会一下子增加很多,甚至超过网站服务器的承载范围,一旦超出这个范围,很有可能造成服务器崩溃,网站无法访问。服务器崩溃故障的原因有很多,以上说的是几个常见的主要原因。我们能做的就是定期维护,备份好数据,通过公司的团队或专业的运维人员,做好服务器运维工作,确保网站正常运行,保障服务器数据安全。并发问题是大部分服务器都经历过的,由于资源的有限性,其同时处理请求的能力自然也有限制。当高并发出现时,服务端的处理和响应速度会大幅降低,更严重的会使服务器崩溃一、服务器高并发处理1、减少请求数量高并发的主要原因之一就是请求量过于庞大,以致超出服务器的承受范围,因此想要解决问题就需要在这方面做出处理,一是需要避免重复的请求消耗不必要的资源,二是通过客户端自身的处理能力来响应请求,而不必到达服务端。2、配置优化如果请求量无法减少,或者有可能更多的情况下,那么增加资源、优化配置是必须要做的。可以增大带宽或对某些配置进行升级,或直接购买更高配置。如果请求量还是过大,可以提供多个服务器来实现任务分摊。3、应用优化在网页上也需要进行一番处理,例如动态页面静态化,减少不必要的图片和视频等需要占据和消耗大量空间的内容,可以考虑使用压缩传输的功能,来减少流量产生并提高速度。4、数据库优化数据库有时能起到一个决定性的作用,因此,我们需要选择一个合理的数据库引擎,对其进行配置优化。当请求通常是携带复杂的数据逻辑,那么可以考虑使用存储过程来处理。对数据库的表也可以同时进行降低数据量的处理。5、HTML静态化 其实大家都知道,效率最高、消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法。但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统CMS,像我们常访问的各个门户站点的新闻频道,甚至他们的其他频道,都是通过信息发布系统来管理和实现的,信息发布系统可以实现最简单的信息录入自动生成静态页面,还能具备频道管理、权限管理、自动抓取等功能,对于一个大型网站来说,拥有一套高效、可管理的CMS是必不可少的除了门户和信息发布类型的网站,对于交互性要求很高的社区类型网站来说,尽可能的静态化也是提高性能的必要手段,将社区内的帖子、文章进行实时的静态化,有更新的时候再重新静态化也是大量使用的策略,像Mop的大杂烩就是使用了这样的策略,网易社区等也是如此同时,html静态化也是某些缓存策略使用的手段,对于系统中频繁使用数据库查询但是内容更新很小的应用,可以考虑使用html静态化来实现,比如论坛中论坛的公用设置信息,这些信息目前的主流论坛都可以进行后台管理并且存储在数据库中,这些信息其实大量被前台程序调用,但是更新频率很小,可以考虑将这部分内容进行后台更新的时候进行静态化,这样避免了大量的数据库访问请求6、图片服务器分离 大家知道,对于Web服务器来说,不管是Apache、IIS还是其他容器,图片是最消耗资源的,于是我们有必要将图片与页面进行分离,这是基本上大型网站都会采用的策略,他们都有独立的图片服务器,甚至很多台图片服务器这样的架构可以降低提供页面访问请求的服务器系统压力,并且可以保证系统不会因为图片问题而崩溃,在应用服务器和图片服务器上,可以进行不同的配置优化,比如apache在配置ContentType的时候可以尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率7、数据库集群和库表散列 大型网站都有复杂的应用,这些应用必须使用数据库,那么在面对大量访问的时候,数据库的瓶颈很快就能显现出来,这时一台数据库将很快无法满足应用,于是我们需要使用数据库集群或者库表散列在数据库集群方面,很多数据库都有自己的解决方案,Oracle、Sybase等都有很好的方案,常用的MySQL提供的Master/Slave也是类似的方案,您使用了什么样的DB,就参考相应的解决方案来实施即可上面提到的数据库集群由于在架构、成本、扩张性方面都会受到所采用DB类型的限制,于是我们需要从应用程序的角度来考虑改善系统架构,库表散列是常用并且最有效的解决方案我们在应用程序中安装业务和应用或者功能模块将数据库进行分离,不同的模块对应不同的数据库或者表,再按照一定的策略对某个页面或者功能进行更小的数据库散列,比如用户表,按照用户ID进行表散列,这样就能够低成本的提升系统的性能并且有很好的扩展性。sohu的论坛就是采用了这样的架构,将论坛的用户、设置、帖子等信息进行数据库分离,然后对帖子、用户按照板块和ID进行散列数据库和表,最终可以在配置文件中进行简单的配置便能让系统随时增加一台低成本的数据库进来补充系统性能8、缓存 缓存一词搞技术的都接触过,很多地方用到缓存,网站架构和网站开发中的缓存也是非常重要,这里先讲述最基本的两种缓存,高级和分布式的缓存在后面讲述架构方面的缓存,对Apache比较熟悉的人都能知道Apache提供了自己的缓存模块,也可以使用外加的Squid模块进行缓存,这两种方式均可以有效的提高Apache的访问响应能力网站程序开发方面的缓存,Linux上提供的MemoryCache是常用的缓存接口,可以在web开发中使用,比如用Java开发的时候就可以调用MemoryCache对一些数据进行缓存和通讯共享,一些大型社区使用了这样的架构,另外,在使用web语言开发的时候,各种语言基本都有自己的缓存模块和方法,PHP有Pear的Cache模块,Java就更多了,.net不是很熟悉,相信也肯定有9、镜像 镜像是大型网站常采用的提高性能和数据安全性的方式,镜像的技术可以解决不同网络接入商和地域带来的用户访问速度差异,比如ChinaNet和EduNet之间的差异就促使了很多网站在教育网内搭建镜像站点,数据进行定时更新或者实时更新,在镜像的细节技术方面,这里不阐述太深,有很多专业的现成的解决架构和产品可选,也有廉价的通过软件实现的思路,比如Linux上的rsync等工具10、负载均衡 负载均衡将是大型网站解决高负荷访问和大量并发请求采用的终极解决办法负载均衡技术发展了多年,有很多专业的服务提供商和产品可以选择,我个人接触过一些解决方法,其中有两个架构可以给大家做参考硬件四层交换 第四层交换使用第三层和第四层信息包的报头信息,根据应用区间识别业务流,将整个区间段的业务流分配到合适的应用服务器进行处理 第四层交换功能就象是虚拟IP,指向物理服务器,它传输的业务服从的协议多种多样,有HTTP、FTP、NFS、Telnet或其他协议,这些业务在物理服务器基础上,需要复杂的载量平衡算法,在IP世界,业务类型由终端TCP或UDP端口地址来决定,在第四层交换中的应用区间则由源端和终端IP地址、TCP和UDP端口共同决定在硬件四层交换产品领域,有一些知名的产品可以选择,比如Alteon、F5等,这些产品很昂贵,但是物有所值,能够提供非常优秀的性能和很灵活的管理能力,Yahoo中国当初接近2000台服务器使用了三四台Alteon就搞定了软件四层交换 大家知道了硬件四层交换机的原理后,基于OSI模型来实现的软件四层交换也就应运而生,这样的解决方案实现的原理一致,不过性能稍差。但是满足一定量的压力还是游刃有余的,有人说软件实现方式其实更灵活,处理能力完全看你配置的熟悉能力软件四层交换我们可以使用Linux上常用的LVS来解决,LVS就是LinuxVirtualServer,他提供了基于心跳线heartbeat的实时灾难应对解决方案,提高系统的鲁棒性,同时可供了灵活的虚拟VIP配置和管理功能,可以同时满足多种应用需求,这对于分布式的系统来说必不可少一个典型的使用负载均衡的策略就是,在软件或者硬件四层交换的基础上搭建squid集群,这种思路在很多大型网站包括搜索引擎上被采用,这样的架构低成本、高性能还有很强的扩张性,随时往架构里面增减节点都非常容易
什么是“宕机”宕机,指操作系统无法从一个严重系统错误中恢复过来,或系统硬件层面出问题,以致系统长时间无响应,而不得不重新启动计算机的现象。它属于电脑运作的一种正常现象,任何电脑都会出现这种情况。(1)一般情况下指的就是计算机主机出现意外故障而死机。(2)其次,一些服务器例如数据库死锁也可以称为宕机,一些服务器的某些服务挂掉了,就可以这么说。服务器宕机的原因:1、由操作员意向操作的重启——用于维护或更新服务器、部署机房或特殊情况等等。2、非操作员本身意愿造成的重启——如供电(欠压,过载,波动)、震动、硬件质量(热稳定性(热敏度)和抗干扰能力)、资源冲突、DirectX文件的损坏、系统不完善或瓶颈问题、病毒、灰尘、散热不良……等等原因而造成重启。3.、由于用户访问量过大,造成资源耗尽,或者你网站的数据超出你的空间限制范围大小也会出现宕机。重启服务器的危害:1、正在进行写硬盘操作时,即硬盘灯在不停地闪动时,断电或者强制重启,对硬盘的伤害最大。2、热启动(CTRL+ALT+DEL),对硬件上不会有损伤(软件上有时会发生程序非法中止导致数据丢失的问题);如果是冷启动(直接开关电源),就会对硬件尤其是硬盘造成伤害。除非无法正常关机可以考虑热启动。3、重启后,突然来电会有大量电流涌入电源,反复进行会使机器寿命大大降低,而且在硬盘正在读写的时候突然地断电也非常容易引起硬盘出现坏道从而损失数据。4.非正常重启的危害:首先,这样轻则会使硬盘掉数据,造成逻辑坏道,重则造成物理的坏道,损坏硬盘磁头伺服电路。还有,这也会造成主板的二度伤害,主板在一通一断当中对电路部分的冲击是比较大的。再则也会对电源造成一定的损害。
服务器质量不好会对网站造成的危害有:1、用户无法正常访问网站,影响网站用户的体验;2、对企业的品牌形象造成不好的影响,使用户慢慢不相信该品牌;3、网站被K站,使之前做的努力全白费;4、影响网站盈利,不利于网站发展;5、网站收录减少,影响网站排名。具体内容如下:1、用户无法正常访问不管用户是通过何种渠道进入网站的,如:通过百度 、谷歌、搜搜、博客等渠道进入的,用户无法访问,就是对用户最大的伤害。2、让用户对该企业的品牌形象造成不好的影响比如,淘宝商城、物流公司等等,一些已经在当地或者是全国都有知名度的品牌,用户打开该品牌的官方网站,如果发现网站打不开,第一次,用户会直接关掉,第二次,慢慢的次数多了,用户就会认为该品牌不值得信任了。3、网站被K站如果一个网站超过24小时打不开的话,有百分之八十的可能会被搜索引擎K站,很多企业都是靠搜索引擎带来业务,所以如果网站被K站,之前的努力就白费,小公司可能会直接倒闭,中大型公司,也会伤筋动骨。4、影响网站盈利万一网站是做销售的,服务器质量问题就会构成用户不能访问,在不能访问的那段工夫会给企业带来很大的磨损,例如淘宝,如果服务器质量问题构成用户不能访问,那将无法估计会错过多少订单,网站的盈利确定会大受影响。5、网站收录减少服务器不稳定不但会让用户不能正常访问,也会让搜索引擎的蜘蛛不能正常访问,在网络营销培训中我们就打听到,搜索引擎不能访问网站那就不能从网站中抓取到内容,这么就直接影响到网站的收录,万一服务器经常出现问题,日久天长也会引起搜查引擎蜘蛛的反感,它就不会访问你的网站,这么会对网站的优化很不利。
常见搜索爬虫1、GooglebotGooglebot是谷歌的网络爬虫,其UA标识为“(compatible;Googlebot/2.1;+http://www.google.com/bot.html)”。对大部分网站,Googlebot应该是爬取最勤快的爬虫,能给优质博客带来大量流量。除了爬取网页的Googlebot,常见的还有图片爬虫Googlebot-Image、移动广告爬虫Mediapartners-Google等。2、BaiduspiderBaiduspider是百度的网页爬虫(蜘蛛),中文站很常见。其UA标识为“(compatible;Baiduspider/2.0;+http://www.baidu.com/search/spider.html)”。除了网页爬虫,手机百度爬虫Baiduboxapp、渲染抓取Baiduspider-render等。3、bingbotbingbot是微软bing搜索的爬虫,其UA标识为“(compatible;bingbot/2.0;+http://www.bing.com/bingbot.htm)”。自微软推广bing搜索品牌后,微软原来的爬虫MSNBot越来越少见到了。4、360Spider360Spider是360搜索的爬虫,其UA标识为“Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/71.0.3578.98Safari/537.36;360Spider”。360搜索份额较少,这个爬虫不是很常见。5、SogouwebspiderSogouwebspider是搜狗搜索的网页爬虫,其UA标识为“Sogouwebspider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)”。背靠腾讯,搜狗目前市场份额在上升,因此其网络爬虫比较勤快,经常能看到。访问日志搜索Sogou,除了Sogouwebspider,还常见SogouMSE、SogouMobileBrowser。这是搜狗手机浏览器的UA标识,不是爬虫。6、YisouSpiderYisouSpider是神马搜索的爬虫,UA标识是“Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/69.0.3497.81YisouSpider/5.0Safari/537.36”。神马曾经或不时疯狂抓取网页导致一些小网站崩溃而惹的天怒人怨。神马搜索是UC合并到阿里后推出的移动搜索引擎。7、YandexBotYandexBot是俄罗斯最大搜索引擎和互联网巨头Yandex的网页爬虫,其UA标识是“(compatible;YandexBot/3.0;+http://yandex.com/bots)”。Yandex提供中文界面和中文搜索,也是少数目前能直接打开的国外搜索引擎。随着越来越多中国人知道Yandex,YandexBot在中文网站日志里越来越常见。8、DuckDuckGoDuckDuckGo是DuckDuckGo的网页爬虫,其UA标识是“Mozilla/5.0(Linux;Android10)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/81.0.4044.138MobileSafari/537.36DuckDuckGo/5”。DuckDuckGo主打隐私、安全、不监控用户记录,界面简洁,也提供中文搜索界面。垃圾爬虫1、MJ12BotMJ12Bot是英国著名SEO公司Majestic的网络爬虫,其抓取网页给需要做SEO的人用,不会给网站带来流量。2、AhrefsBotAhrefsBot是知名SEO公司Ahrefs的网页爬虫。其同样抓取网页给SEO专业人士用,不会给网站带来流量。3、SEMrushBotSEMrushBot也是SEO、营销公司的网络爬虫。DotBotDotBot是Moz.com的网页爬虫,抓取数据用来支持Moztools等工具。4、MauiBotMauiBot不同于其他爬虫,这个爬虫连网站都没有,UA只显示一个邮箱:”MauiBot(crawler.feedback+wc@gmail.com)“。神奇的是这个看起来是个人爬虫,竟然遵循robots协议,算得上垃圾爬虫的一股清流。屏蔽垃圾爬虫屏蔽垃圾爬虫主要从两方面入手:1.robots.txt禁止;2.web层面通过UA禁止。下面分别做介绍。1、robots.txt禁止上文列出的垃圾爬虫都遵循robots协议,因此可以通过robots.txt禁止。操作是在网站根目录新增robots.txt文件,新增如下内容:User-agent:*Disallow:/download.phpUser-Agent:AhrefsBotDisallow:/User-Agent:MJ12botDisallow:/User-Agent:DotBotDisallow:/User-Agent:SemrushBotDisallow:/User-Agent:MauiBotDisallow:/2、通过web软件屏蔽对于不遵循robots协议的爬虫,可以在web软件层面通过UA屏蔽。下面以Nginx为例介绍,操作为:在网站配置的server段内,新增类似如下指令:server{...一些网站配置#屏蔽curl/httpclient抓取if($http_user_agent~*curl|httpclient){ return403;}#屏蔽MauiBot等爬虫if($http_user_agent~*MauiBot|AhrefsBot|DotBot){ return403;}...其他配置
最近发现一些国外垃圾蜘蛛频繁抓我网站页面,白浪费消耗服务器性能。所以要屏蔽他们这些垃圾蜘蛛抓取,这里介绍两种方法一同操作进行屏蔽:第一种方法:直接在根目录下robos.txt文件里面屏蔽掉相关垃圾蜘蛛:User-agent:SemrushBotDisallow:/User-agent:DotBotDisallow:/User-agent:MJ12botDisallow:/User-agent:AhrefsBotDisallow:/User-agent:MauiBotDisallow:/User-agent:MegaIndex.ruDisallow:/User-agent:BLEXBotDisallow:/User-agent:ZoominfoBotDisallow:/User-agent:ExtLinksBotDisallow:/User-agent:hubspotDisallow:/User-agent:leikiDisallow:/User-agent:webmeupDisallow:/User-agent:GooglebotDisallow:/User-agent:googlebot-imageDisallow:/User-agent:googlebot-mobileDisallow:/User-agent:yahoo-mmcrawlerDisallow:/User-agent:yahoo-blogs/v3.9Disallow:/User-agent:SlurpDisallow:/User-agent:twicelerDisallow:/User-agent:AhrefsBotDisallow:/User-agent:psbotDisallow:/User-agent:YandexBotDisallow:/第二种方法,宝塔面板网站设置——配置文件,将需要屏蔽的蜘蛛写进配置文件代码里:#屏蔽垃圾蜘蛛if($http_user_agent~*(SemrushBot|DotBot|MJ12bot|AhrefsBot|MauiBot|MegaIndex.ru|BLEXBot|ZoominfoBot|ExtLinksBot|hubspot|leiki|webmeup)){return403;}第三种方法防火墙里加过滤规则狗日的再来抓就送你吃403!常见的搜索引擎爬虫1、Googlebot(屏蔽!没毛用)Googlebot是谷歌的网络爬虫,其UA标识为“(compatible;Googlebot/2.1;+http://www.google.com/bot.html)”。对大部分网站,Googlebot应该是爬取最勤快的爬虫,能给优质博客带来大量流量。除了爬取网页的Googlebot,常见的还有图片爬虫Googlebot-Image、移动广告爬虫Mediapartners-Google等。2、BaiduspiderBaiduspider是百度的网页爬虫,中文站很常见。其UA标识为“(compatible;Baiduspider/2.0;+http://www.baidu.com/search/spider.html)”。除了网页爬虫,手机百度爬虫Baiduboxapp、渲染抓取Baiduspider-render等。3、bingbotbingbot是微软bing搜索的爬虫,其UA标识为“(compatible;bingbot/2.0;+http://www.bing.com/bingbot.htm)”。自微软推广bing搜索品牌后,微软原来的爬虫MSNBot越来越少见到了。4、360Spider360Spider是360搜索的爬虫,其UA标识为“Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/71.0.3578.98Safari/537.36;360Spider”。目前360搜索份额较少,这个爬虫不是很常见。5、SogouwebspiderSogouwebspider是搜狗搜索的网页爬虫,其UA标识为“Sogouwebspider/4.0(+http://www.sogou.com/docs/help/webmasters.htm#07)”。背靠腾讯,搜狗目前市场份额在上升,因此其网络爬虫比较勤快,经常能看到。访问日志搜索Sogou,除了Sogouwebspider,还常见SogouMSE、SogouMobileBrowser。这是搜狗手机浏览器的UA标识,不是爬虫。6、YisouSpiderYisouSpider是神马搜索的爬虫,UA标识是“Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/69.0.3497.81YisouSpider/5.0Safari/537.36”。神马成立初期太疯狂抓取网页导致一些小网站崩溃而惹的天怒人怨。随着市场份额提升和数据完善,目前YisouSpider还算克制,不再疯狂抓取。从名字上看,神马搜索的发音类似于宜搜,但和专注小说搜索的“宜搜(http://easou.com/)”不是同一家公司。神马搜索是UC合并到阿里后推出的移动搜索引擎,而宜搜在2Gwap时代就已经名声在外。7、YandexBot(屏蔽!没毛用)YandexBot是俄罗斯最大搜索引擎和互联网巨头Yandex的网页爬虫,其UA标识是“(compatible;YandexBot/3.0;+http://yandex.com/bots)”。Yandex提供中文界面和中文搜索,也是少数目前能直接打开的国外搜索引擎。随着越来越多中国人知道Yandex,YandexBot在中文网站日志里越来越常见。8、DuckDuckGoDuckDuckGo是DuckDuckGo的网页爬虫,其UA标识是“Mozilla/5.0(Linux;Android10)AppleWebKit/537.36(KHTML,likeGecko)Version/4.0Chrome/81.0.4044.138MobileSafari/537.36DuckDuckGo/5”。DuckDuckGo主打隐私、安全、不监控用户记录,界面简洁,也提供中文搜索界面。除了上述搜索引擎爬虫,WordPress等提供feed订阅的网站还常见newblur和feedly的访问记录。这两个不是爬虫,而是订阅软件,也能给网站带来流量。常见的网络恶意垃圾爬虫蜘蛛上面说的搜索引擎爬虫能给网站带来流量,也有许多爬虫除了增加服务器负担,对网站没任何好处,应该屏蔽掉。1、MJ12BotMJ12Bot是英国著名SEO公司Majestic的网络爬虫,其抓取网页给需要做SEO的人用,不会给网站带来流量。2、AhrefsBotAhrefsBot是知名SEO公司Ahrefs的网页爬虫。其同样抓取网页给SEO专业人士用,不会给网站带来流量。3、SEMrushBotSEMrushBot也是SEO、营销公司的网络爬虫。4、DotBotDotBot是Moz.com的网页爬虫,抓取数据用来支持Moztools等工具。5、MauiBotMauiBot不同于其他爬虫,这个爬虫连网站都没有,UA只显示一个邮箱:”MauiBot(crawler.feedback+wcgmail.com)“。神奇的是这个看起来是个人爬虫,竟然遵循robots协议,算得上垃圾爬虫的一股清流。6、MegaIndex.ru这是一个提供反向链接查询的网站的蜘蛛,因此它爬网站主要是分析链接,并没有什么作用。遵循robots协议。7、BLEXBot这个是webmeup下面的蜘蛛,作用是收集网站上面的链接,对我们来说并没有用处。遵循robots协议。SemrushBot,这是semrush下面的一个蜘蛛,是一家做搜索引擎优化的公司,因此它抓取网页的目的就很明显了。这种蜘蛛对网站没有任何用处,好在它还遵循robots协议,因此可以直接在robots屏蔽。DotBot,这是moz旗下的,作用是提供seo服务的蜘蛛,但是对我们并没有什么用处。好在遵循robots协议,可以使用robots屏蔽AhrefsBot,这是ahrefs旗下的蜘蛛,作用是提供seo服务,对我们没有任何用处,遵循robots协议。MJ12bot,这是英国的一个搜索引擎蜘蛛,但是对中文站站点就没有用处了,遵循robots协议。MauiBot,这个不太清楚是什么,但是有时候很疯狂,好在遵循robots协议。MegaIndex.ru,这是一个提供反向链接查询的网站的蜘蛛,因此它爬网站主要是分析链接,并没有什么作用。遵循robots协议。BLEXBot,这个是webmeup下面的蜘蛛,作用是收集网站上面的链接,对我们来说并没有用处。遵循robots协议等等……………主要是将从网站日志中发现的一些异常抓取的蜘蛛屏蔽掉,我上面列举的是一些常见的对我们网站没啥用处的蜘蛛,将这些蜘蛛屏蔽掉就好了。第二种方法屏蔽的效果:谷歌一个ip来不了,没毛用!一天来抓几千次,浪费宽带。屏蔽国外垃圾无用蜘蛛,防止大量抓取导致网站崩溃浪费带宽插图14
SemrushBotrobot(identifiedby'spider')是什么蜘蛛?一般的蜘蛛都会在后台控制面板中显示名字,例如baidu,google,yahoo,alexa等等,但是如果你用的虚拟主机是cpanel的控制面板,那么发现Unknownrobot(identifiedby'spider')这个蜘蛛消耗很大的网站流量,那么可以推测这个是百度蜘蛛,因为cpanel的控制面板默认是不识别百度蜘蛛的,所以就会显示为Unknownrobot(identifiedby'spider')。而且通过robots.txt是无法禁止这个蜘蛛抓取网站内容的——这些垃圾爬虫不可能老老实实遵守robots规则,君不见新浪和字节前段时间还因为robots.txt打了官司,大厂都如此,其他爬虫更别指望。宝塔屏蔽常见垃圾蜘蛛和扫描工具的两种办法:最近观察网站后台网站蜘蛛爬取状况,除了我们常见的搜索引擎如百度、Google、Sogou、360等搜索引擎蜘蛛之外,还发现有很多垃圾的蜘蛛平繁的爬取本站,通常这些搜索引擎不仅不会带来流量,因为大量的抓取请求,还会造成主机的CPU和带宽资源浪费,屏蔽方法也很简单,按照下面步骤操作即可,原理就是分析指定UA然后屏蔽。下面给大家带来两种屏蔽垃圾蜘蛛的方法方法一通过网站Robots.txt来屏蔽User-agent:AhrefsBotDisallow:/User-agent:DotBotDisallow:/User-agent:SemrushBotDisallow:/User-agent:UptimebotDisallow:/User-agent:MJ12botDisallow:/User-agent:MegaIndex.ruDisallow:/User-agent:ZoominfoBotDisallow:/User-agent:Mail.RuDisallow:/User-agent:SeznamBotDisallow:/User-agent:BLEXBotDisallow:/User-agent:ExtLinksBotDisallow:/User-agent:aiHitBotDisallow:/User-agent:ResearchscanDisallow:/User-agent:DnyzBotDisallow:/User-agent:spbotDisallow:/User-agent:YandexBotDisallow:/JavaScript把以上代码复制到网站robots.txt里面方法二、通过宝塔面板配置文件判断来屏蔽垃圾蜘蛛和扫描工具1.首先进入宝塔面板,文件管理进入/www/server/nginx/conf目录,新建空白文件kill_bot.conf。然后将以下代码保存到当前文件中。#禁止垃圾搜索引擎蜘蛛抓取教程来自编程笔记if($http_user_agent~*"CheckMarkNetwork|Synapse|Nimbostratus-Bot|Dark|scraper|LMAO|Hakai|Gemini|Wappalyzer|masscan|crawler4j|Mappy|Center|eright|aiohttp|MauiBot|Crawler|researchscan|Dispatch|AlphaBot|Census|ips-agent|NetcraftSurveyAgent|ToutiaoSpider|EasyHttp|Iframely|sysscan|fasthttp|muhstik|DeuSu|mstshash|HTTP_Request|ExtLinksBot|package|SafeDNSBot|CPython|SiteExplorer|SSH|MegaIndex|BUbiNG|CCBot|NetTrack|Digincore|aiHitBot|SurdotlyBot|null|SemrushBot|Test|Copied|ltx71|Nmap|DotBot|AdsBot|InetURL|Pcore-HTTP|PocketParser|Wotbox|newspaper|DnyzBot|redback|PiplBot|SMTBot|WinHTTP|AutoSpider1.0|GrabNet|TurnitinBot|Go-Ahead-Got-It|DownloadDemon|Go!Zilla|GetWeb!|GetRight|libwww-perl|Cliqzbot|MailChimp|SMTBot|Dataprovider|XoviBot|linkdexbot|SeznamBot|Qwantify|spbot|evc-batch|zgrab|Go-http-client|FeedDemon|JikeSpider|IndyLibrary|AlexaToolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|UniversalFeedParser|ApacheBench|MicrosoftURLControl|Swiftbot|ZmEu|jaunty|Python-urllib|lightDeckReportsBot|YYSpider|DigExt|YisouSpider|HttpClient|MJ12bot|EasouSpider|LinkpadBot|Ezooms"){return403;break;}#禁止扫描工具客户端if($http_user_agent~*"crawl|curb|git|Wtrace|Scrapy"){return403;break;}2.保存后返回到宝塔–【网站】-【设置】点击左侧【配置文件】选项卡,在“#SSL-STARTSSL相关配置,请勿删除或修改下一行带注释的404规则”上方空白行插入红色字体的代码:“includekill_bot.conf;”保存后即可生效,这样这些蜘蛛或工具扫描网站的时候就会提示403禁止访问。希望这个教程能帮助到大家,谢谢支持!
不清楚您的网站日志中是否有出现过一个不太常见的CC蜘蛛,访问名称为:CCBot/2.0,下面我们具体来了解一下CCbot是什么蜘蛛?一.CCbot是什么蜘蛛?CCbot,全称为CommonCrawlBot,是一个非营利性基金会致力于提供可以被所有人访问和分析的Web爬网数据的开放存储库。二.你如何处理CCbot蜘蛛?方法1.使用robots.txt使用robots.txt文件来允许或禁止蜘蛛访问页面的权限。robots.txt是放在网站根目录中,蜘蛛来访问时会先查找并查看robots.txt文件,并遵守robots协议来访问网站上的内容,允许访问则访问,不允许访问蜘蛛则离开。①.不允许任何蜘蛛访问您站点的任何部分User-agent:*Disallow:/②.允许任何蜘蛛访问您站点的任何部分User-agent:*Disallow:③.不允许CCbot蜘蛛访问网站的任何部分User-agent:ccbotDisallow:/④.允许CCbot蜘蛛访问您站点的任何部分User-agent:ccbotDisallow:⑤.允许CCbot蜘蛛访问您站点,但不允许CCbot访问“wp-admin”文件夹User-agent:ccbotDisallow:/wp-admin方法2.使用元标记可以在页面中使用元标记来帮助控制搜索引擎蜘蛛对您网站的访问权限。如果您为所有页面使用模板,则可以在和之间添加元标记,它将适用于使用该模板的所有页面。如果要控制特定页面,可以在和之间的各个页面上添加元标记。①.允许所有蜘蛛访问您的页面②.允许所有蜘蛛访问您的网页并跟踪页面上的链接③.允许所有蜘蛛访问您的网页,但不允许他们跟踪链接④.不允许任何蜘蛛访问您的网页⑤.允许CCbot访问您的网页⑥.不允许CCbot访问您的页面⑦.允许CCbot访问您的页面并跟踪更多页面的链接如果你在网站日志中也发现了CCbot,不要惊慌,你接下来需要做的就是是允许它继续爬行还是禁止爬行?May个人觉得这类蜘蛛没有多大的意义,一旦发现这类蜘蛛爬行比较频繁,最好的方式就是禁止这些蜘蛛继续访问我们的网站。
在国内,网站管理者似乎对robots.txt并没有引起多大重视,应一些朋友之请求,今天想通过这篇文章来简单谈一下robots.txt的写作。robots.txt基本介绍robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容。当一个搜索机器人(有的叫搜索蜘蛛)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。另外,robots.txt必须放置在一个站点的根目录下,而且文件名必须全部小写。robots.txt写作语法首先,我们来看一个robots.txt范例:http://www.zhansanjie.com/robots.txt访问以上具体地址,我们可以看到robots.txt的具体内容如下:#Robots.txtfilefromhttp://www.zhansanjie.com#AllrobotswillspiderthedomainUser-agent:*Disallow:以上文本表达的意思是允许所有的搜索机器人访问www.zhansanjie.com站点下的所有文件。具体语法分析:其中#后面文字为说明信息;User-agent:后面为搜索机器人的名称,后面如果是*,则泛指所有的搜索机器人;Disallow:后面为不允许访问的文件目录。下面,我将列举一些robots.txt的具体用法:允许所有的robot访问User-agent:*Disallow:或者也可以建一个空文件"/robots.txt"file禁止所有搜索引擎访问网站的任何部分User-agent:*Disallow:/禁止所有搜索引擎访问网站的几个部分(下例中的01、02、03目录)User-agent:*Disallow:/01/Disallow:/02/Disallow:/03/禁止某个搜索引擎的访问(下例中的BadBot)User-agent:BadBotDisallow:/只允许某个搜索引擎的访问(下例中的Crawler)User-agent:CrawlerDisallow:User-agent:*Disallow:/另外,我觉得有必要进行拓展说明,对robotsmeta进行一些介绍:RobotsMETA标签则主要是针对一个个具体的页面。和其他的META标签(如使用的语言、页面的描述、关键词等)一样,RobotsMETA标签也是放在页面的<head></head>中,专门用来告诉搜索引擎ROBOTS如何抓取该页的内容。RobotsMETA标签的写法:RobotsMETA标签中没有大小写之分,name=”Robots”表示所有的搜索引擎,可以针对某个具体搜索引擎写为name=”BaiduSpider”。content部分有四个指令选项:index、noindex、follow、nofollow,指令间以“,”分隔。INDEX指令告诉搜索机器人抓取该页面;FOLLOW指令表示搜索机器人可以沿着该页面上的链接继续抓取下去;RobotsMeta标签的缺省值是INDEX和FOLLOW,只有inktomi除外,对于它,缺省值是INDEX,NOFOLLOW。这样,一共有四种组合:<METANAME="ROBOTS"CONTENT="INDEX,FOLLOW"><METANAME="ROBOTS"CONTENT="NOINDEX,FOLLOW"><METANAME="ROBOTS"CONTENT="INDEX,NOFOLLOW"><METANAME="ROBOTS"CONTENT="NOINDEX,NOFOLLOW">其中<METANAME="ROBOTS"CONTENT="INDEX,FOLLOW">可以写成<METANAME="ROBOTS"CONTENT="ALL">;<METANAME="ROBOTS"CONTENT="NOINDEX,NOFOLLOW">可以写成<METANAME="ROBOTS"CONTENT="NONE">目前看来,绝大多数的搜索引擎机器人都遵守robots.txt的规则,而对于RobotsMETA标签,目前支持的并不多,但是正在逐渐增加,如著名搜索引擎GOOGLE就完全支持,而且GOOGLE还增加了一个指令“archive”,可以限制GOOGLE是否保留网页快照。例如:<METANAME="googlebot"CONTENT="index,follow,noarchive">表示抓取该站点中页面并沿着页面中链接抓取,但是不在GOOLGE上保留该页面的网页快照。如何使用robots.txtrobots.txt文件对抓取网络的搜索引擎漫游器(称为漫游器)进行限制。这些漫游器是自动的,在它们访问网页前会查看是否存在限制其访问特定网页的robots.txt文件。如果你想保护网站上的某些内容不被搜索引擎收入的话,robots.txt是一个简单有效的工具。这里简单介绍一下怎么使用它。如何放置Robots.txt文件robots.txt自身是一个文本文件。它必须位于域名的根目录中并被命名为"robots.txt"。位于子目录中的robots.txt文件无效,因为漫游器只在域名的根目录中查找此文件。例如,http://www.zhansanjie.com/robots.txt是有效位置,http://www.zhansanjie.com/mysite/robots.txt则不是。这里举一个robots.txt的例子:User-agent:*Disallow:/cgi-bin/Disallow:/tmp/Disallow:/~name/使用robots.txt文件拦截或删除整个网站要从搜索引擎中删除您的网站,并防止所有漫游器在以后抓取您的网站,请将以下robots.txt文件放入您服务器的根目录:User-agent:*Disallow:/要只从Google中删除您的网站,并只是防止Googlebot将来抓取您的网站,请将以下robots.txt文件放入您服务器的根目录:User-agent:GooglebotDisallow:/每个端口都应有自己的robots.txt文件。尤其是您通过http和https托管内容的时候,这些协议都需要有各自的robots.txt文件。例如,要让Googlebot只为所有的http网页而不为https网页编制索引,应使用下面的robots.txt文件。对于http协议(http://zhansanjie.com/robots.txt):User-agent:*Allow:/对于https协议(https://zhansanjie.com/robots.txt):User-agent:*Disallow:/允许所有的漫游器访问您的网页User-agent:*Disallow:(另一种方法:建立一个空的"/robots.txt"文件,或者不使用robot.txt。)使用robots.txt文件拦截或删除网页您可以使用robots.txt文件来阻止Googlebot抓取您网站上的网页。例如,如果您正在手动创建robots.txt文件以阻止Googlebot抓取某一特定目录下(例如,private)的所有网页,可使用以下robots.txt条目:User-agent:GooglebotDisallow:/private要阻止Googlebot抓取特定文件类型(例如,.gif)的所有文件,可使用以下robots.txt条目:User-agent:GooglebotDisallow:/*.gif$要阻止Googlebot抓取所有包含?的网址(具体地说,这种网址以您的域名开头,后接任意字符串,然后是问号,而后又是任意字符串),可使用以下条目:User-agent:GooglebotDisallow:/*?尽管我们不抓取被robots.txt拦截的网页内容或为其编制索引,但如果我们在网络上的其他网页中发现这些内容,我们仍然会抓取其网址并编制索引。因此,网页网址及其他公开的信息,例如指向该网站的链接中的定位文字,有可能会出现在Google搜索结果中。不过,您网页上的内容不会被抓取、编制索引和显示。作为网站管理员工具的一部分,Google提供了robots.txt分析工具。它可以按照Googlebot读取robots.txt文件的相同方式读取该文件,并且可为Googleuser-agents(如Googlebot)提供结果。我们强烈建议您使用它。在创建一个robots.txt文件之前,有必要考虑一下哪些内容可以被用户搜得到,而哪些则不应该被搜得到。这样的话,通过合理地使用robots.txt,搜索引擎在把用户带到您网站的同时,又能保证隐私信息不被收录。 误区一:我的网站上的所有文件都需要蜘蛛抓取,那我就没必要在添加robots.txt文件了。反正如果该文件不存在,所有的搜索蜘蛛将默认能够访问网站上所有没有被口令保护的页面。 每当用户试图访问某个不存在的URL时,服务器都会在日志中记录404错误(无法找到文件)。每当搜索蜘蛛来寻找并不存在的robots.txt文件时,服务器也将在日志中记录一条404错误,所以你应该做网站中添加一个robots.txt。 误区二:在robots.txt文件中设置所有的文件都可以被搜索蜘蛛抓取,这样可以增加网站的收录率。 网站中的程序脚本、样式表等文件即使被蜘蛛收录,也不会增加网站的收录率,还只会浪费服务器资源。因此必须在robots.txt文件里设置不要让搜索蜘蛛索引这些文件。 具体哪些文件需要排除,在robots.txt使用技巧一文中有详细介绍。 误区三:搜索蜘蛛抓取网页太浪费服务器资源,在robots.txt文件设置所有的搜索蜘蛛都不能抓取全部的网页。 如果这样的话,会导致整个网站不能被搜索引擎收录。robots.txt使用技巧 1.每当用户试图访问某个不存在的URL时,服务器都会在日志中记录404错误(无法找到文件)。每当搜索蜘蛛来寻找并不存在的robots.txt文件时,服务器也将在日志中记录一条404错误,所以你应该在网站中添加一个robots.txt。 2.网站管理员必须使蜘蛛程序远离某些服务器上的目录——保证服务器性能。比如:大多数网站服务器都有程序储存在“cgi-bin”目录下,因此在robots.txt文件中加入“Disallow:/cgi-bin”是个好主意,这样能够避免将所有程序文件被蜘蛛索引,可以节省服务器资源。一般网站中不需要蜘蛛抓取的文件有:后台管理文件、程序脚本、附件、数据库文件、编码文件、样式表文件、模板文件、导航图片和背景图片等等。 下面是VeryCMS里的robots.txt文件: User-agent:* Disallow:/admin/后台管理文件 Disallow:/require/程序文件 Disallow:/attachment/附件 Disallow:/images/图片 Disallow:/data/数据库文件 Disallow:/template/模板文件 Disallow:/css/样式表文件 Disallow:/lang/编码文件 Disallow:/script/脚本文件 3.如果你的网站是动态网页,并且你为这些动态网页创建了静态副本,以供搜索蜘蛛更容易抓取。那么你需要在robots.txt文件里设置避免动态网页被蜘蛛索引,以保证这些网页不会被视为含重复内容。 4.robots.txt文件里还可以直接包括在sitemap文件的链接。就像这样: Sitemap:sitemap.xml 目前对此表示支持的搜索引擎公司有Google,Yahoo,AskandMSN。而中文搜索引擎公司,显然不在这个圈子内。这样做的好处就是,站长不用到每个搜索引擎的站长工具或者相似的站长部分,去提交自己的sitemap文件,搜索引擎的蜘蛛自己就会抓取robots.txt文件,读取其中的sitemap路径,接着抓取其中相链接的网页。 5.合理使用robots.txt文件还能避免访问时出错。比如,不能让搜索者直接进入购物车页面。因为没有理由使购物车被收录,所以你可以在robots.txt文件里设置来阻止搜索者直接进入购物车页面。