Help

Настройка исключений для антиспамового движка


English version: Configuring exceptions for the anti-spam engine


Обычно вам необходимо настроить исключения для защиты от спама, если вы используете технологию, которая взаимодействует с вашим сайтом посредством отправки форм или программной отправки POST-запросов. В таких случаях WP Cerber может блокировать легитимные запросы, распознавая их как запросы ботов. Это приводит к ложным срабатываниям, которые можно увидеть на вкладке «Активность». Такие записи в журнале помечаются как «Спам: отправка формы отклонена» .

Как исключить определенные запросы из проверки

Все исключения для защиты от спама настраиваются на странице настроек защиты от спама . Вы можете настроить два типа исключений: исключения на основе URL-адресов и исключения, проверяющие и учитывающие HTTP-заголовки.

Чтобы настроить исключения на основе URL-адресов, используйте поле настройки «Исключить эти местоположения из сканирования на спам» . Вы можете указать несколько исключений, каждое на отдельной строке.

Вот как это работает: чтобы исключить конкретный запрос, просто добавьте путь (и, при необходимости, строку запроса) к этому запросу в поле. Антиспам-модуль проигнорирует любой запрос, путь к которому содержит одну из этих строк, независимо от того, где она находится в URL. Таким образом, вы можете гарантировать, что важные запросы будут проходить без блокировки спам-фильтрами.

Если вам нужен ещё больший контроль над исключениями, вы можете использовать регулярные выражения (REGEX) для определения более точных шаблонов сопоставления на основе URL. Это может помочь, когда вам нужно исключить запросы на основе определённых вариаций путей или строк запроса. Дополнительные советы по использованию регулярных выражений и созданию эффективных исключений см. ниже.

WordPress: Configuring Anti-spam Exceptions

Configuring WordPress anti-spam exceptions in WP Cerber

Примеры простых исключений для защиты от спама

Чтобы помочь вам приступить к настройке исключений для защиты от спама, ниже приведено описание некоторых распространенных типов URL-путей, которые вы можете добавить в поле «Исключить эти местоположения из сканирования на наличие спама» .

1. Простые пути без GET-параметров или скриптов

Если вы хотите исключить определённые пути в WordPress, вы можете добавить их в виде простых строк. Антиспам-движок пропустит сканирование любого запроса, содержащего один из этих путей в качестве подстроки, независимо от того, где он встречается в URL.

Примеры:

  • "/about"
  • "/contact/"
  • "/add/new/product"

Благодаря этим записям любой URL-адрес, содержащий эти пути, будет исключен из сканирования на спам, независимо от местоположения в пределах URI.

2. Имена PHP-скриптов без GET-параметров

Если вы хотите исключить определённые PHP-скрипты, просто укажите их и путь к ним. Это может быть особенно полезно, если у вас есть определённые скрипты, которые не должны проверяться антиспам-модулем. Антиспам-модуль будет искать эти скрипты, находя указанное имя файла в URL-адресе.

Примеры:

  • "/index.php"
  • "/engine/products.php"
  • "search.php"

Этот тип исключений является гибким и охватывает как скрипты в корневом каталоге, так и скрипты, вложенные в подкаталоги.

3. Пути с параметрами GET

Если ваши исключения должны учитывать как конкретный путь, так и определённые параметры запроса, вы можете добавить пути с полными параметрами GET в поле. Антиспам-модуль применит исключение только в том случае, если полная строка, включая параметры, будет найдена в URI запроса. Это идеально подходит для точного сопоставления как по пути, так и по параметрам запроса.

Примеры:

  • "/store/products.php?id=10"
  • "/wp/?query="
  • "/wp-admin/process.php?item=5&action=add"

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

Используя эти примеры, вы сможете настроить различные типы исключений, чтобы защитить важные запросы от спам-фильтрации WP Cerber, одновременно обеспечивая надежную защиту от спама в других областях вашего WordPress.

Расширенные исключения для защиты от спама с помощью REGEX

Для более гибкого и эффективного управления исключениями для защиты от спама вы можете использовать регулярные выражения (REGEX) для определения шаблонов, соответствующих определённым типам запросов. Использование исключений на основе REGEX даёт вам дополнительную гибкость для точного исключения запросов, имеющих схожие структуры или динамические элементы в путях и/или параметрах запроса.

При указании шаблона REGEX в поле «Исключить эти местоположения из сканирования на спам» антиспамовый модуль WP Cerber будет рассматривать его как гибкое условие соответствия. Если URI запроса соответствует шаблону, он будет исключён из сканирования на спам. Полный URI запроса можно просмотреть на странице журнала Traffic Inspector.

Чтобы указать исключение на основе REGEX, заключите шаблон в {}.

Примеры исключений для защиты от спама на основе REGEX

Не забудьте заключить каждый шаблон в скобки {} , чтобы WP Cerber распознал его как выражение REGEX. Примечание: чтобы указать в шаблоне точку ( . ) или вопросительный знак ( ? ), необходимо экранировать их обратной косой чертой ( \ ) следующим образом: \. и \?

1. Исключение путей с определенными начальными точками

Если вы хотите исключить все запросы, начинающиеся с определенного пути, REGEX позволяет сопоставить любой URI, начинающийся с указанного сегмента.

  • Пример: {^/processor/.*$}
  • Этот шаблон исключит любой запрос, начинающийся с /admin/ , независимо от того, что следует за ним. Он идеально подходит для каталогов, содержащих несколько динамических страниц или действий по одному пути.

2. Исключение путей с числовыми идентификаторами

Чтобы найти пути, содержащие динамические числовые идентификаторы, используйте REGEX для сопоставления последовательности чисел в определенных местах.

  • Пример: {^/handler/[0-9]+$}
  • Этот шаблон будет соответствовать любому пути, например /handler/123 или /handler/456 , где идентификатор меняется, но остаётся числовым. Это полезно для URL, использующих уникальные числовые идентификаторы.

3. Исключение на основе частичных параметров запроса

Вы также можете использовать REGEX для сопоставления определенных шаблонов в строках запроса, что позволяет исключать запросы, включающие определенные параметры, без необходимости указания точного значения.

  • Пример: {^/submit\.php\?query=.*$}
  • Этот шаблон соответствует любому запросу к submit.php , в котором присутствует параметр query , независимо от его фактического значения.

4. Гибкие URL-пути с дополнительными параметрами

REGEX позволяет учитывать необязательные сегменты в пути или строке запроса, обеспечивая большую гибкость в определении того, что следует исключить.

  • Пример: {^/products/?(.*)$}
  • Этот шаблон сопоставляет запросы к /products с дополнительными подпутями или без них, такими как /products/details или /products/123 . Отлично подходит для широких исключений в рамках раздела вашего WordPress.

Используя шаблоны REGEX, вы можете определять исключения для защиты от спама, адаптированные для сложных или переменных запросов, что дает вам точный контроль над тем, какие URL-адреса обходят сканирование на спам.

Как определить URI запроса

Перейдите на страницу администрирования Live Traffic . Найдите легитимный запрос, который нужно добавить в белый список, и возьмите его URI запроса из столбца «Запрос» . Если ваш URI запроса содержит динамические параметры GET, как на скриншоте ниже, вам может потребоваться использовать выражение REGEX.

Request URIs on the Live Traffic page in the WordPress dashboard

Request URI on the Live Traffic page in the WordPress dashboard

Как отключить антиспам на выбранной странице

Чтобы избежать конфликтов со сторонними формами, загруженными из внешнего источника и обрабатываемыми на стороннем сайте, вы можете настроить исключения для антиспам-фильтра WP Cerber, отключив его код на выбранных страницах вашего сайта. Список страниц задаётся PHP-константой CERBER_DISABLE_SPAM_FILTER . Эта константа должна быть определена в файле wp-config.php. Используйте строку с идентификаторами страниц (записей), разделёнными запятыми. Если список настроен, вы увидите список страниц на странице администратора настроек антиспама WP Cerber. Ниже приведён пример определения списка.

 define('CERBER_DISABLE_SPAM_FILTER', '3, 45');

Вам может понадобиться использовать эту функцию, если на вашем сайте есть формы HubSpot.

См. также: Как остановить спам-регистрации пользователей на вашем WordPress


I'm a team lead in Cerber Tech. I'm a software & database architect, WordPress - PHP - SQL - JavaScript developer. I started coding in 1993 on IBM System/370 (yeah, that was amazing days) and today software engineering at Cerber Tech is how I make my living. I've taught to have high standards for myself as well as using them in developing software solutions.

View Comments
There are currently no comments.