我非常成功地处理了单行标题pcre:/etc/postfix/header_check
。但当涉及到多行时,我有点沮丧。以下是标题的一部分:
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Content-Type: multipart/alternative;
boundary="_000_8FA6C259529CB0418FBDF96A6B22A486209F15MAILmynetworkloca_"
MIME-Version: 1.0
--_000_8FA6C259529CB0418FBDF96A6B22A486209F15MAILmynetworkloca_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
test
--_000_8FA6C259529CB0418FBDF96A6B22A486209F15MAILmynetworkloca_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
我需要的只是摆脱像
--_000_8FA6C259529CB0418FBDF96A6B22A486209F15MAILmynetworkloca_
或者至少将最后一部分替换为 我尝试放入的MAILmynetworkloca_
内容maildomaincom_
/etc/postfix/header_check
/MAILmynetworkloca_/ REPLACE maildomaincom_
但它没有起作用
答案1
仅供参考:此行--__INSERTSOMERANDOCHARHERE000MAILmynetwok
不是电子邮件标题的一部分。也许您不想更改/删除它。
不管怎样,我来这里就是为了做这件事。
您应该使用header_checks
和body_checks
来替换那一行。
内容main.cf
body_checks = pcre:/etc/postfix/mimereplace
header_checks = pcre:/etc/postfix/mimereplace
内容/etc/postfix/mimereplace
/^(.*)MAILmynetworkloca_(.*)/ REPLACE ${1}maildomaincom_${2}
答案2
我认为你会想使用类似的东西/MAILmynetworkloca_$/m REPLACE maildomaincom_
。
美元符号表示位于字符串末尾,应将m
其置于多行模式(根据聚合酶链反应页数
我不知道你为什么要替换该标题,但这是你的邮件服务器:)