postfix header_checks 使用正则表达式正确设置

WJR*_*WJR 5 postfix replace regex smtp-headers

我似乎无法弄清楚为什么 header_checks 没有被评估。我使用的是 Ubuntu 12.04、postfix 2.7、dovecote、spamassasin、clamav、amavis。

我将以下行添加到 /etc/postfix/main.cf :

header_checks = regexp:/etc/postfix/header_checks
Run Code Online (Sandbox Code Playgroud)

这是 header_checks :

/From: .*/ REPLACE From: noreply@valid.mydomain.com
Run Code Online (Sandbox Code Playgroud)

要测试正则表达式:

#postmap -q "From: <werwe>" regexp:/etc/postfix/header_checks
Run Code Online (Sandbox Code Playgroud)

它评估正确并给我返回输出:

REPLACE From: noreply@valid.mydomain.com
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试从命令行或 php 网页发送电子邮件时,postfix 将不会替换 From 标头。我很困惑。

我想重写所有外发电子邮件:

From: Confirmation Email<webapp@invalid.mydomain.com>   
Run Code Online (Sandbox Code Playgroud)

- 变成 -

From: Confirmation Email<noreply@valid.mydomain.com>
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激。

WJR*_*WJR 5

已解决 - /etc/postfix/master.cf 中的以下行导致冲突:

pickup    fifo  n       -       -       60      1       pickup
    -o content_filter=
#   -o receive_override_options=no_header_body_checks  //commented this line out
Run Code Online (Sandbox Code Playgroud)