Защита от реферального спама
Начало 2015 года ознаменовалось по-настоящему массовым реферальным спамом, по моим наблюдениям к нему подключились даже китайцы с aliexpress и прочими товарными агрегаторами. Неискушенный читатель спросит, что такое реферальный спам?
Дело в том, что в протоколе HTTP одна из частей заголовка запроса содержит информацию о последней посещенной до перехода странице. Благодаря данной информации мы можем узнать с какой страницы осуществился переход на сайт. Referer фиксируется в логах, при определенной настройке сервера, а так же практически во всех системах статистики. По задумке спамеров, наткнувшись на непонятный сайт, с которого было совершено много переходов, вебмастер совершит на него переход и возможно заинтересуется его содержимым или ему сохранится cookie посещения сайта.
По большому счету ничего страшного в реферальном спаме нет, однако роботы (боты) создают излишнюю нагрузку на сервер, а любопытные клиенты, просматривая статистику сайта, могут перейти на какой-нибудь скомпрометированный или вредоносный сайт. Поэтому я решил найти решение, чтобы зарубить данный вид спама на корню. Итак, решение проблемы:
RewriteCond %{HTTP_REFERER} semalt\.com [NC,OR]
RewriteCond %{HTTP_REFERER} buttons\-for\-website\.com [NC,OR]
RewriteCond %{HTTP_REFERER} simple\-share\-buttons\.com [NC]
RewriteRule .* – [F,L]
Протестировать работу правил можно воспользовавшись программой minibrowser. В программе проставляем запрещенный реферер, обращаемся к сайту и смотрим лог программы. В ответ на обращение сервер должен отдать 403 заголовок, т.е. обращение к данному сайту запрещено.
Комментарии (0)