使用.htamless 来阻止不想要的访客来你的网页

作者:码迷 阅读:183 点赞:27

使用.htamless 来阻止不想要的访客来你的网页/

使用.htamless 来阻止不想要的访客来你的网页

在这个文章中,我们将会讨论「如何借由.htamless阻止不想要的访客或是机器人访问你的网页」

.htamless是在服务器中的隐藏文档,它可以控制网页与其他工具之间访问的权限。

按照下面步骤,我们可以通过几种不同的方法,可以阻挡不需要的访客进入你的网页。

编辑你的.htamless文档

使用IP位址阻挡

阻挡单一IP位址

deny from 123.123.123.123

阻挡多个IP位址

阻挡一个范围的IP,例如123.123.123.1 - 123.123.123.255,你也可以把最后一组比特删除。

deny from 123.123.123

你也可以使用CIDR(Classless Inter-Domain Routing) 无类别区隔路由标记方式来阻挡IP。

阻挡范围123.123.123.1 - 123.123.123.255, 使用 123.123.123.0/24

阻挡范围123.123.64.1 - 123.123.127.255, 使用 123.123.123.0/18

deny from 123.123.123.0/24

依据User-Agent string 来阻挡不良用户

一些恶意的用户会使用不同的IP发送请求,但是在这些全部请求之中,只使用相同的User-Agent,在这种情况下,你可以只阻挡用户的User-Agent字符串。

阻挡单个不良User-Agent

如果你只想阻挡一个特殊的User-Agent字符串,你可以使用RewriteRule。

RewriteEngine On RewriteCond %{HTTP_USER_AGENT} Baiduspider [NC] RewriteRule .* - [F,L]

BrowserMatchNoCase "Baiduspider" bots

Order Allow,Deny Allow from ALL Deny from env=bots

阻挡多个不良User-Agent

BrowserMatchNoCase "Baiduspider" bots BrowserMatchNoCase "HTTrack" bots BrowserMatchNoCase "Yandex" bots

Order Allow,Deny Allow from ALL Deny from env=bots

阻挡不良参照链接(盗连)

Block a single bad referer

阻挡单个参照链接

RewriteEngine On RewriteCond %{HTTP_REFERER} example.com [NC] RewriteRule .* - [F]

Order Allow,Deny Allow from ALL Deny from env=bad_referer Block multiple bad referers

阻挡多个参照链接

RewriteEngine On RewriteCond %{HTTP_REFERER} example.com [NC,OR] RewriteCond %{HTTP_REFERER} example.net [NC] RewriteRule .* - [F]

SetEnvIfNoCase Referer "example.com" bad_referer SetEnvIfNoCase Referer "example.net" bad_referer

Order Allow,Deny Allow from ALL Deny from env=bad_referer

暂时阻止不良搜索机器人

在某些情况下,你或许不想要直接发送403消息网页给访客,因为那是个(长时间)拒绝他进入网页的消息。

举个例子来说,例如当天有个营销活动,网页将会产生大量的的网络流量,在这期间,你不想要让一些好的搜索引擎机器人像是GOOGLE或是雅虎,进入你的网页并检索网页,因为有可能会使用额外的流量来增加服务器的负担

以下代码,将可以用503回应的方式来设置基本的错误网页消息,这是用缺省的方式去告诉搜索引擎,这个请求只是暂时性的被阻挡并且一段时间后可以再尝试。503回应与403回应是不同的,503是通过430回应来暂时性的拒绝进入权限,像是GOOGLE将会确认为503回应后,他们将会再来尝试检索网页,并非删除他的检索。

当你注意到一些新的搜索机器人在爬(抓取)你的网页太频过频繁,并且你想要阻挡他们或是让他们不要那么频繁抓取,可以使用robots.txt文档来处理,是一个很好的方式。

以下代码会抓取User-Agent的任何请求,其中包含搜索机器人、搜索爬虫、搜索蜘蛛,大多数主要的搜索引擎都是符合的,第二个RewriteCond是允许这些机器人仍然可以请求robots.txt文档来核对最新的规则,但是任何其他的请求都很单纯的得到503网页回应或是"Site temporarily disabled for crawling"。

常态来说,你在开始使用两天后,还不想删除503回应的话,GOOGLE可能会开始去理解成长时间的服务器中断,并且会开始从GOOGLE的索引删除你的网页链接。

本文网址: https://www.mamioo.com/seo-google/4eaw813a8m62

本站内容均为「码迷SEO」原创整理,未经授权严禁采集转载,违者必究。