Exim4configuration展开$ message_headersvariables来提取邮件主题

我必须向外部程序发送从Exim服务器收到的所有消息。

这是我的acl_smtp_dataconfiguration:

warn condition = ${lookup mysql{ INSERT INTO maillog ( subject ) VALUES ( '${quote_mysql:$message_headers}'}{$value}fail} 

这工作,但我想只保存“主题”标题​​,而不是所有的标题。 我找不到一个只有主题的variables,也许我可以从$ message_headers var的所有头文件中提取它。

您可以使用$h_subject$rh_subject来访问标题。 这是访问你想访问的任何标题的标准方式。 $rh_变体是原始未解码的头,而$h_已经被解码。 还有一个$bh标题是两者之间的一部分。 这些logging在Exim规范的String expansions章节中。

我使用列分配将主题写入数据库

 subject = '${rxquote:$rh_subject:}'\