Бан IP и ботов при помощи файла .htaccess
Что такое файл .htaccess?
Это файл индивидуальной настройки веб – сервера. Можно создавать новый на каждую директорию.
Бывают ситуации, когда очень активно парсят ваш сайт или кого-то вы не хотели бы видеть на вашем сайте или поисковые системы тратят ваш трафик, а взамен ничего не дают. Для таких и не только ситуаций существует данный файл.
Зачем он нужен?
Для:
- Бана IP недоброжелателей.
- Бана IP спамеров.
- Бана поисковых ботов, которые потребляют слишком много трафика и дают нагрузку на сервер.
Рассмотрим каждый вариант отдельно:
1. Создайте в корне сайта файл под названием. .htaccess. В него положите следующее содержание:
order allow,deny
allow from all
deny from 89.232.124.6
Данный файл не пустит на сайт пользователя с IP 89.232.124.6. также можно указывать подсеть 89.232.124, очень эффективно, у пользователей, которые выходят в сети через gprs, IP адрес меняется при каждом подключении.
2. Каждый день на мой блог обрушивается куча спама, если бы не Akismet блог был бы заполнен спамом, но бывают случаи, когда спам проскальзывает, тогда я беру IP адреса спамеров и записываю в файл .htaccess.
3. Есть абсолютно бесполезные поисковые роботы, такие как апорт, вебальта, яхо.
Для них нужно в файл внести следующую запись:
RewriteCond %{HTTP_USER_AGENT} ^.*msn [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Twiceler [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Slurp [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*WebAlta [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*psbot [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Mail.Ru [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*HTMLParser [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Wget
RewriteRule ^.* - [F,L]
Включены и другие боты, которые очень часто не смотрят на содержание файла robots.txt
Ссылки по теме:
Описание синтаксиса и примеры работы с .htaccess (очень много полезной информации).
Список бесполезных ботов в виде robots.txt (попробуйте залить как robots.txt, если боты так и будут идти, баньте через .htaccess).