Начиная с конца 2014 года в статистике на многих сайтах стали появляться переходы с реферальными ссылками и 100% отказами.
Стоит отметить, что представители поисковиков заверяют, что поисковые системы научились распознавать подобный спам и он не влияет на показатели сайтов.
Хочется в это верить, но как говориться «береженного Бог бережет». С помощью простой настройки сервера можно избавится от подобного спама в статистике.
Если Вы используете nginx, то для борьбы со спамом выполните следующее:
- В блок http в основном конфиге nginx -
/etc/nginx/nginx.conf
добавьте директиву map:http { map $http_referer $bad_referer { default 0; include /etc/nginx/bad_referer.map; }
- Создайте в категории
/etc/nginx
файл для хранения плохих сайтов, назовите его bad_referer.map, добавьте в файл правила для блокировки, мой список такой:"~*get-your-social-buttons.com" 1; "~*snip.to" 1; "~*semalt.com" 1; "~*copyrightclaims.org" 1;
Домены для бана я смотрел в Google Analytics, пример на картинке ниже.
- В конфиге для сайта добавьте правило для блокировки, у меня конфиг хранится в файле /etc/nginx/sites-available/myitstuff.ru, правило следующее:
if ($bad_referer) { return 444; }
- Перезагрузите nginx:
/etc/init.d/nginx restart
- Проверьте работает правило или нет, для этого в консоли выполните команду:
curl -e "http://www.copyrightclaims.org" "https://myitstuff.ru"
Первый домен должен быть из списка блокируемых, а второй вашего сайт. Если вы увидите не html код своего сайта, а сообщение:
curl: (52) Empty reply from server
значит защита сработала.
Для выполнения команды проверки нуден cURL, если он не установлен, то установите его:
apt-get install curl
В итоге при запросе с рефсайтами nginx выдаст 444 ошибку, статистика метрик не сработает, следовательно, подобные ссылки не попадут в статистику. Использование ответа 444, а не более традиционного 301 обусловлено большей скоростью выполнения первого.
Комментарии ()