我正在设置Postfix来编辑依赖于接收器的标头。这是通过header_checks(http://www.postfix.org/header_checks.5.html)
完成的逻辑如下: 如果电子邮件发送到“erik@sorgaard.net”,那么我们复制From字段并将其粘贴到Reply-To字段,From字段也设置为“erik@sorgaard.net”。
我没有regexp的经验,但通过一些搜索,我能够提出以下内容:
if /^To: (erik@sorgaard.net)\s.*$/
/^From: (.+@.+)\s.*$/ PREPEND Reply-To:$1
/^From: (.+@.+)\s.*$/ REPLACE From: erik@sorgaard.net
endif
这不起作用。我不确定语法有什么问题,但任何帮助都会非常感激。
关心Erik
答案 0 :(得分:1)
问题是header_checks只对每个电子邮件行应用一次,因此跳过seconf“From”行(第3行)。
答案 1 :(得分:0)
似乎接受的答案可能会误导人。
如果您在header_checks中使用if-endif进行战斗,则应保留以下内容:
If the input string matches /pattern/, then match that input
string against the patterns between if and endif. The if..endif
can nest
来自http://www.postfix.org/header_checks.5.html
注意“然后匹配那个输入字符串”。这意味着您不能在if / endif块中操作任何标题,而只能在if语句中使用该标题。