Предупреждающее сообщение после проверки заголовка Postmap с помощью Postfix

Предупреждающее сообщение после проверки заголовка Postmap с помощью Postfix

Я использую postfix-pcre на моем Ubuntu Server. Если я проверю конфигурацию header_checks с помощью следующей команды

postmap -q 'To: "Markus Schlei" <[email protected]>' regexp:/etc/postfix/header_checks

Я получаю следующее предупреждающее сообщение:

postmap: предупреждение: regexp map /etc/postfix/header_checks, строка 36: недопустимое предшествующее регулярное выражение.

Также это не отклонило мой тест. В строке 36 я получил этот код:

/^To:.*\@(?!(gmail\.com)).*/ REJECT Test-Nr-1

Я хочу отклонить все сообщения, которые не соответствуютgmail.com

Редактирование 1: Я обнаружил, что если я удалю "(?!(..)" предупреждающее сообщение исчезло, но оно делает обратное тому, что я хотел.

решение1

Вы должны знать, что существуют регулярные выражения POSIX и регулярные выражения PCRE.

Вы используетеотрицательный просмотр вперед( ?!) срегулярное выражениеtable. Этот тип регулярного выражения поддерживается только таблицами регулярных выражений PCRE.

Чтобы узнать, какие типы таблиц поиска поддерживает ваша система Postfix, используйте команду «postconf -m».

Если pcre указан, то просто переключитесь на pcre tables вместо regexp tables. Если нет, то вам нужно установитьпостфикс-pcre.

Связанный контент