我们从 PHP 应用程序发送带有 EXIM 4.71 的电子邮件。DKIM 已启用并正常工作,除非在发送特定类型的邮件时导致dkim=neutral (body hash did not verify)。
Received-SPF: pass (google.com: domain of [email protected] designates 2a02:750:5::256 as permitted sender) client-ip=2a02:750:5::256;
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of [email protected] designates 2a02:750:5::256 as permitted sender) [email protected];
dkim=neutral (body hash did not verify) [email protected]
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=letsrace.se; s=dkim;
h=Content-Transfer-Encoding:Content-Type:Reply-To:From:Subject:To:Message-Id:Date; bh=9CkFmpgBio6ql+M36DtO8Gbw8keno3PlJ6db2JTrwy4=;
b=ILyB0JLZLWTig346yGWzmOwk+bEgr0k3hjYyPovA4B3+ggRshzTX9yDeAeklEmYaq4H768zZc0Vn6tR9YpngllkHJ6XTf3lTPr570yWOEhE8dvCkq+M0CBXmxEApHJmoKq2Oeh7sFCHVWGiN8JXYa8ohgsSFEd5Z+xHFlj3AvbI=;
失败的电子邮件类型包含通过站点上的 HTML 表单输入的消息,并且从该应用程序发送的其他邮件没有问题。我一直怀疑混合行尾是罪魁祸首,但无法通过规范化行尾来改善这种情况。
EXIM 在创建 DKIM 散列后是否执行一些清理?
有任何想法吗?
这很奇怪,但以下似乎是正确的:
这不起作用,导致 DKIM body hash 失败
但这可以正常工作
不是最后一个 [LF] 之前的空格。