1

我正在使用 Laragon v. 2.2.2 - 开发环境

我尝试发送带有波兰字符"śćńółęśąśżćźó"的邮件,我还添加了正确的标题"Content-type: text/html; charset=UTF-8"和文件编码到邮件,但在 sendmail 输出日志和 gmail 中,邮件看起来比如: "L>A?L"AllL,ATL>AL>LLA?LsAl"

Sendmail 输出日志:

17.03.31 16:02:58 ** --- MESSAGE BEGIN ---
17.03.31 16:02:58 ** To: ***@gmail.com
17.03.31 16:02:58 ** Subject: test
17.03.31 16:02:58 ** X-PHP-Originating-Script: 0:index.php
17.03.31 16:02:58 ** Content-type: text/html; charset=UTF-8
17.03.31 16:02:58 ** 
17.03.31 16:02:58 ** śćńółęśąśżćźó
17.03.31 16:02:58 ** --- MESSAGE END ---


17.03.31 16:02:59 >> Date: Fri, 31 Mar 2017 16:02:59 <EOL>
17.03.31 16:02:59 >> To: ***@gmail.com<EOL>
17.03.31 16:02:59 >> Subject: test<EOL>
17.03.31 16:02:59 >> X-PHP-Originating-Script: 0:index.php<EOL>
17.03.31 16:02:59 >> Content-type: text/html; charset=UTF-8<EOL>
17.03.31 16:02:59 >> <EOL>
17.03.31 16:02:59 >> L>A?L"AlL,ATL>A.L>LLA?LsAl<EOL>
17.03.31 16:02:59 >> .<EOL>

PHP代码:

<?php
    mail('***@gmail.com', 'test', 'śćńółęśąśżćźó', "Content-type: text/html; charset=UTF-8");
?>

邮件通过 Laragon 电子邮件配置发送(我使用的是 Gmail)

如何解决?

4

2 回答 2

1

问题已经解决了。Laragon 的开发人员为 sendmail 做了一个修补程序。现在编码工作正常。这是修补程序(在上一篇文章中)https://forum.laragon.org/topic/433/mail-function-trouble-with-encoding

于 2017-04-04T19:09:33.777 回答
0

声明所有 MIME标头,包括声明 8 位编码。它应该允许您的 sendmail (SMTP) 服务器进行接收 SMTP 服务器所需的转换。
电子邮件标头中的非 ASCII 字符需要另一种特殊编码 ( RFC2047 )。
由于非常古老的传统,电子邮件默认仅包含 7 位字符。

MIME-Version: 1.0
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit
于 2017-03-31T19:24:23.527 回答