2021年9月10日

robots.txt で botの来襲を防ぐ Semrush Ahrefs MJ12 BLEX

タイトルで言っちゃってますが、robots.txt に下記のように記述します

robots.txt の記述方法

robots.txt
User-agent: SemrushBot
Disallow: /
User-agent: AhrefsBot
Disallow: /
User-agent: MJ12bot
Disallow: /
User-agent: BLEXBot
Disallow: /

後は botが読み込んで来なくなるのを待つだけ

各botの説明サイトと実際のサービスサイトを張っておきます
Semrush は無料では使えないので Disallow: / でよいと思います
Ahrefs は無料で多少使えますが、詳しく見ようと思うと有料
majestic MJ12bot は無料でさわりを見ることができ、詳しく見ようと思うと有料
webmup BLEXbot は無料でさわりを見ることができ、詳しく見ようと思うと有料

・SemrushBot https://ja.semrush.com/bot/ https://ja.semrush.com/
・AhrefsBot https://ahrefs.com/ja/robot https://ahrefs.com/ja/
・MJ12bot https://mj12bot.com/ https://majestic.com/
・BLEXbot http://webmeup-crawler.com/ https://webmeup.com/

もっとアグレッシブに防御したい場合は下記

Apache .htaccessの記述例

.htaccess で 403 forbiddenを返し、robots.txtだけ表示する場合

apache 2.2系

SetEnvIf User-Agent "SemrushBot" bot
SetEnvIf User-Agent "AhrefsBot" bot
SetEnvIf User-Agent "MJ12bot" bot
SetEnvIf User-Agent "BLEXBot" bot

order Allow,Deny
Allow from all
Deny from env=bot
<Files robots.txt>
Allow from all
</Files>

apache 2.4系

SetEnvIf User-Agent "SemrushBot" bot
SetEnvIf User-Agent "AhrefsBot" bot
SetEnvIf User-Agent "MJ12bot" bot
SetEnvIf User-Agent "BLEXBot" bot

<RequireAll>
Require all Granted
Require not env bot
</RequireAll>
<Files robots.txt>
Require all Granted
</Files>

設置したら、実はアクセスの大半がbotでサーバが軽くなったとかあるかも!?

実際あったんですよね
しょぼいシステムだったからか、DBに負荷がかかり、調べたらbotでした


参考:

迷惑クローラーの排除・拒否方法についての解説&よくある勘違い(初心者向け)
https://qiita.com/fallout/items/ef33549e2d6b4e799874


追記:IPアドレスで拒絶する場合
petalbot: 114.119.128.0/18
semrush: 185.191.171.1/24
AhrefsBot: 51.222.253.1/24
DotBot: 216.244.66.199

さらに追記:
thesis-research-botの行儀がとても悪い
100.21.24.205 ec2-100-21-24-205.us-west-2.compute.amazonaws.com
44.230.252.91 ec2-44-230-252-91.us-west-2.compute.amazonaws.com
52.25.208.208 ec2-52-25-208-208.us-west-2.compute.amazonaws.com
thesis-research-bot はIPで403にするのが良い
nginxなら deny 100.21.24.205; とか

amazonbotの行儀が悪い
23.22.35.162 23-22-35-162.crawl.amazonbot.amazon
3.224.220.101 3-224-220-101.crawl.amazonbot.amazon
52.70.240.171 52-70-240-171.crawl.amazonbot.amazon
https://developer.amazon.com/ja/support/amazonbot

User-agent: Amazonbot
Disallow: /

Alexaとかに使っているよう


  • follow us in feedly

スポンサーリンク