postfix pcre условный ЗАМЕНА
Мне нужно изменить строку заголовка "From:" во входящих сообщениях электронной почты, только если "Message-Id:" начинается с определенной строки. Итак, в main.cf я положил:
header_checks = pcre:/etc/postfix/header_checks
и файл header_checks содержит:
if /^Message-Id: <footext.+/
/^From: (.*)@johndoe.com/ REPLACE From: ${1}@ext.johndoe.com
endif
Это не работает, условие не принимает. Что мне не хватает?
1 ответ
http://www.postfix.org/header_checks.5.html
if / pattern / flags
endif Match the input string against the patterns between if and endif, if and only if ----> the same <----- input string also matches /pattern/.
Вы не можете использовать блок if/endif для сопоставления с другим заголовком.
Я наткнулся на этот пост и подумал об обновлении, так как у меня была похожая проблема: я использовал другой подход с использованием postfix pipe, как предлагалось в некоторых из этих ресурсов:
- https://thecodingmachine.io/triggering-a-php-script-when-your-postfix-server-receives-a-mail
- http://postfix.1071664.n5.nabble.com/Conditional-sender-rewrite-based-on-recipient-address-td93497.html
и только потому, что я столкнулся с проблемой петель: