AWAFAWAF

Интеграция с CMS

Предпочтительный способ подключения AWAF для Apache с mod_php — auto_prepend_file в .htaccess. Если окружение не поддерживает php_value, используйте раннюю точку входа, обычно это index.php, и обязательно проверьте покрытие.

Предпочтительный .htaccess

Когда PHP работает как модуль Apache и сервер разрешает php_value в .htaccess, добавьте директиву в .htaccess корня сайта. Укажите абсолютный путь к установленному каталогу AWAF.

php_value auto_prepend_file "<путь_до_каталога>/antibot/index.php"

Почему лучше, чем только index.php

auto_prepend_file подключает AWAF перед выполнением каждого PHP-файла в области действия настройки, а не только при проходе через один фронтовый index.php. Это даёт более раннее и полное покрытие для прямых PHP endpoint-ов, admin/ajax-скриптов, legacy-файлов, служебных CMS-файлов и сценариев, которые обходят основной index.php.

Такой способ уменьшает разрывы, которые появляются при неполной интеграции только во фронт-контроллер: если отдельный PHP-файл вызывается напрямую, AWAF всё равно стартует до кода этого файла.

Ограничения окружения

Директива php_value работает не везде. На PHP-FPM, CGI, Nginx без Apache или при запрете php_value в .htaccess используйте .user.ini, настройку виртуального хоста, php_admin_value/параметры pool либо раннюю точку входа, обычно index.php. Этот fallback менее универсален, чем auto_prepend_file, поэтому проверьте admin/ajax, прямые PHP endpoint-ы и служебные маршруты.

Проверка после включения

  • Откройте /antibot/ и убедитесь, что AWAF установлен и может писать в logs/, cache/ и lists/.
  • Проверьте главную, внутренние страницы, формы, AJAX/API, sitemap/XML, robots.txt, админку, cron и обмены.
  • Проверьте прямой PHP endpoint, если он есть, например отдельный обработчик формы или legacy-скрипт.
  • Если сайт за proxy/CDN, сначала настройте header_proxy и проверьте реальный IP в logs/antibot.log.
  • Для технических endpoint-ов, где капча недопустима, добавляйте точные whitelist_url/captcha_uri правила.

Когда нужен include в CMS

Если auto_prepend_file недоступен, подключайте AWAF как можно раньше в ранней точке входа проекта, обычно в index.php, до HTML-вывода и тяжёлой логики CMS. Такой fallback менее универсален, поэтому проверьте покрытие admin/ajax, прямых PHP endpoint-ов и служебных маршрутов; для WordPress, Drupal, Joomla и DLE CMS есть отдельные страницы с осторожными вариантами.