在电子邮件中添加页眉和页脚最安全的方法是啥?

Posted

技术标签:

【中文标题】在电子邮件中添加页眉和页脚最安全的方法是啥?【英文标题】:The safest way to add a header and a footer to an e-mail?在电子邮件中添加页眉和页脚最安全的方法是什么? 【发布时间】:2014-11-22 06:23:57 【问题描述】:

我正忙于编写 SMTP 中继引擎的最后一点。基本上,人们将邮件发送到这个 SMTP 地址,然后通过管道传输到文件,进行分析,然后将页眉和页脚添加到正文中。我的问题是,我不确定我更改邮件的方式是否适用于所有情况。基本上,如果我有这个:

Return-path: <XXXX@YYYY>
Envelope-to: system-filter
Delivery-date: Thu, 25 Sep 2014 12:43:53 +0200
Received: from localhost ([127.0.0.1]:XXXX helo=XXXX.XXXX.com)
    by XXXX.XXXX.com with XXXX(XXXX-XXXX-XXXX-XXXX:XXXX)
    (Exim XXXX)
    (envelope-from <XXXX@XXXX.XXXX>)
    id XXXX-XXXX-67
    for XXXX.XXXX@XXXX.com; Thu, 25 Sep 2014 12:43:52 +0200
Received: from XXXX.XXXX.XXXX.XXXX ([197.87.204.210]) by XXXX.XXXX.com
 (Horde Framework) with HTTP; Thu, 25 Sep 2014 10:43:50 +0000
Date: Thu, 25 Sep 2014 10:43:50 +0000
Message-ID: <XXXX.Horde.XXXX@XXXX.XXXX.com>
From: XXXX@XXXX.XXXX
To: XXXX.XXXX@XXXX.com
Subject: This is the subject
User-Agent: Internet Messaging Program (IMP) H5 (XXXX)
Content-Type: text/plain; charset=UTF-8; format=flowed; DelSp=Yes
MIME-Version: 1.0
Content-Disposition: inline
X-OutGoing-Spam-Status: No, score=-2.9

And this is the message.

这个想法是: 1.只需找到第一个空白行并将页眉放在那里,然后将页脚附加到末尾。 2.使用php Mime Mail Parser修改body

1 的问题是我认为可能有不同的格式不符合正常布局。 2 的问题是,我仅限于邮件解析器可以解析的任何内容。

那么,按照我的描述,最安全的电子邮件转发方式是什么?

【问题讨论】:

【参考方案1】:

仅在消息正文前添加或附加内容是行不通的。它不起作用,因为消息可以是多部分的(例如带有附件)或编码的(例如 base64)。 PHP Mime Mail Parser 似乎能够处理这些情况,但它没有保存修改后消息的方法。

我建议使用一些电子邮件解析库,它可以编写消息,而不仅仅是阅读。例如,Python 标准库有 email 包,可以满足您的需求。但是,您必须检查消息是否是多部分的,如果是,则将页眉和页脚添加到右侧部分(即添加到实际内容而不是图像或附件)。您还需要检查邮件是纯文本还是 html,并正确设置页眉和页脚的格式。

【讨论】:

以上是关于在电子邮件中添加页眉和页脚最安全的方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

仅为 WooCommerce 中的“customer-on-hold-order”电子邮件通知编辑页眉和页脚

在 woocommerce 中自定义新帐户电子邮件模板

怎样在EXCEL中添加页眉/页脚?

C#/VB.NET 如何在 Word 文档中添加页眉和页脚

如何为wordpress主题添加自定义页眉和页脚

怎么在WORD页眉中添加页码为page1ofn?