迷惑なボットcompute-1.amazonaws.comをブロックするWordPressプラグインと設定

アフィリエイトサイトのリンクをprettylinksで管理しているのですが

迷惑なクローラーがしょっちゅう来るので困ってます。

ec2-54-159-9-254.compute-1.amazonaws.com

などの

迷惑なクローラーをアクセス拒否

アクセス拒否をするにはhtaccessにアクセス拒否を追記する

 

 

以下のコードを.htaccess内に記載

 

RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http(s)?://.*amazonaws\.com [NC,OR]
RewriteCond %{REMOTE_HOST} ^.*\.compute-1\.amazonaws\.com$ [NC,OR]
RewriteCond %{REMOTE_HOST} ^.*\.compute\.amazonaws\.com$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^AppEngine-Google [NC]
RewriteCond %{HTTP_USER_AGENT} ^Wget[NC]
RewriteRule ^(.*)$ – [F,L]

 

 

参考にさせていただいたサイト様

https://katata.info/2018/02/amazonaws-com-access-2/

 

WordPressサイトの場合

サーバーのサイトがある階層に.htaccessがあるので

そちらを編集するといいでしょう。

 

サーバーへFTP接続とか面倒くさい

そういう方はプラグインで.htaccessを編集しちゃいましょう。

WordPressのhtaccessを管理ページから操作するプラグイン

 

プラグイン名

Htaccess File Editor – Safely Edit Htaccess File

作者: WebFactory Ltd

 

Htaccess File Editor と検索すれば見つかります

Htaccess File Editorの管理画面

初期設定で赤い部分に注意書きがあります

 

I understand Enable editor.

をクリックすると編集できるようになります。

 

 

 

パーマリンク設定がデフォルトのまま(?p数字 みたいなやつ)だとWordPressで.htaccessが自動生成されてない場合があります。パーマリンク設定を任意の形式に変更するとその場合、htaccessは自動生成れます。

 

編集状態になると

以下のようにWordPressが自動で生成したhtaccessの中身が表示されます。

 

 

 

.htaccessの文字列がたくさんありますが

下の方の空白部分に適当に改行して

さきほどのコード

RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http(s)?://.*amazonaws\.com [NC,OR]
RewriteCond %{REMOTE_HOST} ^.*\.compute-1\.amazonaws\.com$ [NC,OR]
RewriteCond %{REMOTE_HOST} ^.*\.compute\.amazonaws\.com$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^AppEngine-Google [NC]
RewriteCond %{HTTP_USER_AGENT} ^Wget[NC]
RewriteRule ^(.*)$ – [F,L]

 

こちらをコピペします。

 

Save Changesをクリックして完了です。

 

セーブする前にTestすることもできます。

不安な人はテストしてみるといいでしょう。

 

以上

WordPressのサイトで迷惑なクローラーをアクセス拒否する手順でした。

 

IPアドレスで除外

一般的にクローラーはIPをいくつも変えて訪問してくるのでその際はIPアドレスで拒否しましょう。

 

IPアドレスで拒否する

記載例

order deny,allow
deny from 34.210.3.55

 

Amazon.comのボット例(実際のIP)

54.159.9.254
3.95.189.144
174.129.51.52

かなり複数のパターンでアクセスしてきます。

ひとつひとつ入力するのは面倒なので以下のように*で一括ブロック設定も可能です

54.159.9.*
3.95.189.*
174.129.51.*

 

order deny,allow
deny from
54.159.9.*
3.95.189.*
174.129.51.*

 

さらにサーバーによっては、

下の2つの数値(0-255)をまとめて登録出来る場合もあるみたいです。

以下のような表記も試してみるといいでしょう。

54.159.*
3.95.*
174.129.*

 

order deny,allow
deny from
54.159.*
3.95.*
174.129.*

 

いjy