Мы отправляем электронные письма с помощью EXIM 4.71 из приложения PHP. DKIM включен и работает правильно, если только при отправке писем определенного типа, что приводит к dkim = нейтральный (хеш тела не проверялся).
Received-SPF: pass (google.com: domain of no-reply@letsrace.se 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 no-reply@letsrace.se designates 2a02:750:5::256 as permitted sender) smtp.mail=no-reply@letsrace.se;
dkim=neutral (body hash did not verify) header.i=@letsrace.se
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
<?php echo $heading; ?> [LF]
[LF]
[LF]
<?php echo $content_for_layout; ?> [LF]
Но это работает как надо
<?php echo $heading; ?> [LF]
[LF]
[LF]
<?php echo $content_for_layout; ?>[LF]
Не пробел перед последним [LF].