PHPMailer和Content-MD5

PHPMailer和Content-MD5,php,md5,phpmailer,Php,Md5,Phpmailer,设置content-md5邮件头的正确标记是什么,特别是在使用多部分/mime编码邮件时 $mail->addCustomHeader('Content-MD5',base64_编码(MD5($body)) 包含邮件正文部分就足够了,还是我必须包含主题/附件/…?不,这样不行。Content-MD5()只能应用于单项MIME元素,如text/html,而不能应用于整个多部分消息。PHPMailer仅在消息级别添加自定义头(使用addCustomHeader时),因此无法计算单个零件的自定义头。您

设置content-md5邮件头的正确标记是什么,特别是在使用多部分/mime编码邮件时

$mail->addCustomHeader('Content-MD5',base64_编码(MD5($body))


包含邮件正文部分就足够了,还是我必须包含主题/附件/…?

不,这样不行。Content-MD5()只能应用于单项MIME元素,如text/html,而不能应用于整个多部分消息。PHPMailer仅在消息级别添加自定义头(使用
addCustomHeader
时),因此无法计算单个零件的自定义头。您需要重写
createBody
函数以添加到该标题中,这将非常复杂

总体而言,更好的选择是使用DKIM,它提供了相同的防篡改功能,但它已经存在并正在运行,并且得到了ISP的广泛支持

使用Content-MD5而不是DKIM有什么特别的原因吗