Частой причиной перегрузки по ресурсам является индексация сайта поисковыми машинами (Yandex, Rambler, Google, WebAlta, и так далее). Это распространенная проблема. Вам необходимо выбрать один из трех вариантов действий.
1) Если ваш сайт должен надежно индексироваться поисковой системой, т.е. вы хотите оставить поток посетителей с поисковых машин, вы должны оплатить тарифный план, необходимый для поддержания нагрузки. Это единственный вариант продолжения работы.
Любые замедления, ограничения нагрузки либо иные подобные технические решения приведут к частичному отказу индексирования поисковыми машинами и заметному ухудшению результатов поиска по вашему сайту. Ограничение можно реализовать единственным способом – отказ в обслуживании страницы, если лимит процессорной нагрузки на час уже исчерпан, для поисковых машин это столь же неприемлемо, как и полный отказ индексации.2) Если вы можете отказаться от поисковых систем, вы можете запретить индексирование сайта.
2.1) Первый вариант решения проблемы - запретить индексацию с помощью robots.txt. Этот файл необходимо разместить в корневой каталог сайта. Описание директив файла можно посмотреть, например, здесь:
https://www.yandex.ru/yandsearch?text=robots.txt&stype=wwwНапример, для полного запрета индексирования сайта вы можете разместить robots.txt с таким содержимым:
User-Agent: *
Disallow: /К сожалению, некоторые поисковые машины файл robots.txt игнорируют или используют недостаточно оперативно.
2.2) Более надежный путь – запрет доступа с помощью средств управления хостингом. Этот вариант работает только на веб-сервере Apache.
Важно: из-за особенностей работы веб-акселератора ограничение через команды .htaccess deny from может не работать.
Для установки ограничений посмотрите раздел личного кабинета "полный список функций", "управление сайтами и серверами".
- Вариант 1 – вы должны самостоятельно на основе логов понять, какие IP адреса перегружают ваш сайт, и запретить их.
- Вариант 2 – запрет через поле User Agent протокола HTTP.
Например, HTTP Agent робота Яндекса можно зафильтровать по подстроке Yandex.2.3) Конфигурацию можно также произвести через собственные скриптовые вставки в PHP/PERL/ASP/ASP.NET файлы, в том числе на веб-сервере IIS. Это надежный путь, минус в том, что он требует изменения файлов проекта.
Пример вставки на PHP, которая запретит открытие сайта ботом Яндекса (это одна строка кода):
if (substr_count (strtolower ($_SERVER['HTTP_USER_AGENT']), 'yandex') > 0) die ('');
Данный код можно вставить в общее для всех страниц проекта место, например, в конфигурационный файл проекта.
3) Опытный программист всегда может оптимизировать сайт, используя средства кеширования и другие приемы оптимизации. Например, можно заменить динамические страницы сайта статическими HTML страницами. Так вы сможете остаться на текущем плане и оставить возможность полноценной индексации.
Если программист вашего сайта или вы сами задаетесь вопросом о том, как именно это сделать, это заведомо означает, что, к сожалению, вашей квалификации для этого не хватит. Служба поддержки хостинга также не может давать рекомендации по этим вопросам.
Лимиты на процессорную нагрузку присутствуют в договорах всех провайдеров хостинга, т.к. совместная работа множества сайтов на одной машине - это суть услуги виртуального хостинга. Однако, если вам кажется, что какой-то другой хостинг-провайдер сможет поддерживать нагрузку вашего сайта, вы можете отказаться от наших услуг и сменить хостинг, при этом неистраченный остаток средств вы сможете получить назад.