Affinger6には、PVモニターとクリック計測の機能があります。
ざっくり、ブログへのアクセス数と、アフィリエイトリンクへのクリック数を計測する機能です。
しかし、ここ最近、クリック計測にのみのログがたくさん出るようになりました。
どうやら、海外のbotがアフィリエイトリンクへダイレクトアクセスしているようです。
ASPのクリック数の数値もおかしなことになってしまいました。
そこで、海外からのアクセスをブロックすることにしました。
海外からのbotによるアクセスをブロックする方法
海外からのアクセスをブロックする方法はいくつかあります。
レンタルサーバー自体にそういった機能があれば、その活用が一番いいでしょう。
このブログはエックスサーバーを使っていて、そういった機能はありません。
今回はプラグインを使うことにしました。
選んだプラグイン
「IP2Location Country Blocker」というプラグインを使いました。
下記のサイトを参照しました。
国ごとブロックかけてしまおうというものです。
Amazon Kindle Unlimitedなら読み放題で読むことができます。

海外からのbotによるアクセスをブロックの失敗談
設定自体はさきほどのリンクに従って行うことで簡単にできます。
ただ、下記のチェックを間違えてしまって大変な目にあいました。
- 以下に挙げた国をブロックする
- 以下に挙げた国以外をブロックする
下を間違えて選んでいて、「日本」からのアクセスをブロックしてしまったのです。


アクセス数がめちゃくちゃ減りました、、、
ここまで登録するなら、日本だけアクセス許可するようにしてもいい気がしてきました。
海外からのbotによるアクセスをブロックするために試したこと
サーバー側で「Refererなしアクセス」拒否の設定も試しました。
下記のような空Referer拒否のコードを、.htaccessに追記するというものです。
<IfModule mod_rewrite.c>
RewriteEngine On
# Refererが空のアクセスを拒否
RewriteCond %{HTTP_REFERER} ^$
RewriteRule .* - [F]
</IfModule>
これをすると、botによるダイレクトアクセスを防ぐことができます。
弊害は、ブックマークなどで直接アクセスも防いでしまうこと。

ブログをブックマークしてくれている人を防ぐのは嫌だったので、この手段は止めました
海外からのbotによるアクセスをブロックのまとめ
今回は、海外からのアクセスをブロックする方法をまとめました。
ざっくり国レベルでブロックするということで、完璧に防げるわけではないですが、だいぶアクセスは減ったので様子見したいと思います。
Amazon Kindle Unlimitedなら読み放題で読むことができます。
