Снижение нагрузки от спам- и поисковых роботов

Вопросы использования хостинга.

Модераторы:hoadmin, dobs, ArniXXX, hostess, bj

Ответить
Сообщение
Автор
hostess
HO Support
Сообщения:457
Зарегистрирован:Пт окт 13, 2006 11:14
Откуда:Киев
Контактная информация:
Снижение нагрузки от спам- и поисковых роботов

#1 Сообщение hostess » Чт сен 20, 2012 11:34

Не все поисковые роботы одинаково полезны. А некоторые способны резко повысить нагрузку на сервер хостинга, создаваемую сайтом, до таких пределов, что сайт приходится закрывать.
Но этого можно избежать простыми методами. Собственно об этом статья - http://www.ho.ua/ru/robots.html
HO Support team

baytuch
Сообщения:925
Зарегистрирован:Сб мар 14, 2009 00:23
Откуда:пгт. Войтовцы
Контактная информация:

Re: Снижение нагрузки от спам- и поисковых роботов

#2 Сообщение baytuch » Вс фев 02, 2014 11:46

Как вариант, для блокировки доступа к сервисным страницам сайта

Главная страница сайта не блокируется, при первом же движении мыши записывает в куки ключ доступа.

При переходе на эти самые сервисные страницы проверяем следующие параметры:

не является ли клиент поисковым ботом, если да, то разрешаем доступ;

проверяем ключ доступа, который был записан ранее, если совпадает, то идем дальше;
проверяем версию протокола (опционально), если версия 1.1, о идем дальше;
проверяем реферер, если страница была запрошена с нашего сайта, то разрешаем доступ, если два предыдущих условия также выполнились.

Код для вставки на главную страницу (после тега body):

Код: Выделить всё

<script type="text/javascript>
// Анти-бот

var trig = false;
var cookie_var = "blablabla";

function init_process(){
  if ( trig == false ){
    trig = true;
    document.cookie="access_key=" + cookie_var + "; path=/";
  };
};

var doc = document.getElementsByTagName('body')[0];
doc.onmousemove = function(){ init_process(); };
</script>
Добавить с .htaccess

Код: Выделить всё

RewriteEngine on

# Доступ ботам поисковых систем
RewriteCond %{HTTP_USER_AGENT} !^.*Google.*$ [NC]
RewriteCond %{HTTP_USER_AGENT} !^.*Yandex.*$ [NC]

# Проверка ключа Cookie 
RewriteCond %{HTTP_COOKIE} !^.*access_key=blablabla.*$ [OR]
# Проверка версии протокола (только 1.1)
RewriteCond %{SERVER_PROTOCOL} !^.*1.1$ [OR]
# Проверка переменной referer (только со своего сайта)
RewriteCond %{HTTP_REFERER} !^http://www.ho.ua/.*$

RewriteRule ^(index.html|a.html)$ - [F]
Таким образом блокирую перебор паролей, рассылку спама и пт.

Не панацея, но вполне работоспособно, ИМХО
Fusion Player — модуль для CMS PHP-Fusion (demo video: посмотреть)

Не использую пиратского ПО
IP-PBX Asterisk українською. Зроби краще!

«ХО» – мое все.
А ты перевел свой домен на DNSSEC?

Slackware userИзображение

Ответить