Настройки JS Challenge
Назначение функции
JS Challenge — это дополнительный механизм защиты сайта от ботов, парсеров и других автоматизированных систем. Функционал появился в модуле «Защита от парсинга» для 1С-Битрикс начиная с версии 1.18.3 и позволяет проверять поддержку JavaScript и cookies ещё до обработки запроса сайтом.
Принцип работы:
- При обращении к сайту посетителю предлагается выполнить небольшую проверку с помощью JavaScript.
- Обычные браузеры пользователей проходят её автоматически и незаметно.
- Большинство ботов, не поддерживающих JavaScript, не смогут пройти проверку и будут заблокированы.
Для обычных посетителей работа JS Challenge практически незаметна и не влияет на использование сайта.
Настройки JS Challenge:

Проверять поддержку JavaScript и cookies перед обработкой запроса
Включает дополнительную проверку посетителей сайта на поддержку JavaScript и cookies.
При включенной настройке браузер пользователя должен успешно пройти проверку перед получением доступа к сайту. Это позволяет отсечь часть ботов, парсеров и других автоматизированных систем.
Срок действия успешной JS-проверки (сек.)
Определяет, как долго результат успешной проверки будет храниться в браузере посетителя.
Пока срок действия не истёк, повторная проверка выполняться не будет.
Примеры значений:
3600— 1 час86400— 1 сутки604800— 7 суток
86400 — 1 сутки.
Страница для посетителей, не прошедших проверку доступа
Позволяет отредактировать текст, который будет отображаться посетителям, не прошедшим проверку JavaScript и cookies.
Обычно менять данную настройку не требуется.
Часто задаваемые вопросы
Пользователи увидят какую-либо проверку?
Для обычного посетителя проверка проходит автоматически и практически незаметно.
Может ли JS Challenge повлиять на SEO?
Нет, при условии включения опции «Использовать обратный DNS для проверки поисковых роботов».
Работает ли JS Challenge при включённом композитном режиме?
Да, но есть особенности.
1. Выполните предварительную настройку работы модуля с композитом
Если настройка ещё не выполнялась, обязательно выполните шаги из инструкции по работе модуля с композитным кэшем.
2. Особенности работы в композитном режиме
Если на сайте включён композитный режим 1С-Битрикс, то по умолчанию JS Challenge работает в режиме максимальной совместимости с композитным кэшированием.
В этом режиме проверка посетителя выполняется только при втором обращении к сайту. Такой подход позволяет сохранить максимальную эффективность композитного режима и не снижать скорость загрузки страниц для новых посетителей.
Однако у этого режима есть особенность: если бот или парсер обратится к сайту только один раз и больше не выполнит ни одного запроса, то он сможет получить содержимое страницы из композитного кэша до того, как будет выполнена проверка JS Challenge.
Для большинства сайтов это является оптимальным вариантом работы, поскольку обеспечивает наилучший баланс между производительностью сайта и защитой от автоматизированного трафика.
Если же необходимо блокировать подобных ботов уже при первом обращении к сайту, можно перевести JS Challenge в строгий режим работы.
Для этого раскомментируйте настройку:
$strictJsChallengeComposite = true;
в файле:
/bitrix/modules/protobyte.antiparsing/composite.php