ブログ

【ブログ】悪質なボットを拒否する方法【WordPress】

【ブログ】悪質なボットを拒否する方法

ブログへのアクセスログをぼんやりと眺めていたのですが、悪質なBotが自サイトへ不要なアクセスを繰り返していました。主に外国のSEOチェックツールのクローラーでした。

今回は、その悪質なBotのアクセスを拒否する設定方法をまとめていきます。

  • Xserverでブログを運営
  • Apacheを利用(バージョンは2.4以降)
  • robot.txtではなく、.htaccessを編集する方法でアクセス拒否します。
  • ↑robot.txtでもアクセスできるBotもあり、かつ、robot.txtを新規でつくるのもめんどくさいので、既存である.htaccessを編集する楽な方法を選択

ボットのアクセス拒否方法

Xserverにログイン

Xserverにログインして、「ファイル管理」を開きます。
自身のサイト名→public_htmlに移動し、.htaccessファイルを選択して、「編集」をクリックします。

.htaccessを編集する

以下のように、拒否したいボットをユーザエージェントで登録して、拒否する設定をします。ユーザエージェントとは、アクセスしてくるBotのOSとそのバージョン、ブラウザとそのバージョンなどの情報のことです。

ざっくりボットの説明をすると、外国(ロシア、中国、ヨーロッパなど)からのSEO関連ツールボットと外国ブラウザ(ロシア、中国、ヨーロッパなど)を拒否しています。

#BEGIN ボット対策

#SEO関連ツールのbot
SetEnvIf User-Agent "MJ12bot" deny_bot
SetEnvIf User-Agent "BLEXBot" deny_bot
SetEnvIf User-Agent "AhrefsBot" deny_bot
SetEnvIf User-Agent "SemrushBot" deny_bot
SetEnvIf User-Agent "serpstatbot" deny_bot
SetEnvIf User-Agent "SEOkicks" deny_bot
SetEnvIf User-Agent "Barkrowler" deny_bot
SetEnvIf User-Agent "SearchAtlas" deny_bot
SetEnvIf User-Agent "AlphaBot" deny_bot
SetEnvIf User-Agent "RSiteAuditor" deny_bot


#検索エンジンのbot
SetEnvIf User-Agent "Yandex" deny_bot
SetEnvIf User-Agent "Mail.RU" deny_bot
SetEnvIf User-Agent "baiduspider" deny_bot
SetEnvIf User-Agent "Sogou" deny_bot
SetEnvIf User-Agent "SeznamBot" deny_bot
SetEnvIf User-Agent "Qwantify" deny_bot
SetEnvIf User-Agent "istellabot" deny_bot
SetEnvIf User-Agent "Cliqzbot" deny_bot
SetEnvIf User-Agent "Yeti" deny_bot
SetEnvIf User-Agent "MojeekBot" deny_bot
SetEnvIf User-Agent "coccocbot" deny_bot

<RequireAll>
    Require all Granted
    Require not env deny_bot
</RequireAll>
#END ボット対策

.htaccessファイルに貼り付けたら、「更新」をクリックして完了です!

それぞれどんなBotかを知りたい方は、以下のサイトを参考にしてみてください!

クローラーロボットの比較一覧

以上!

ABOUT ME
のこのこ
26歳フリーランスのネットワークエンジニア 文系第2新卒からSESに入社、2年目にフリーランスに転職 ●保持資格 CCNP,LPIC level3,F5101,TOEIC820,AWSクラウドプラクティショナー,AWSアソシエイト ●目指す資格 ネットワークスペシャリスト,F5 201,セキスペなど
おすすめの関連記事