繁体   English   中英

使用Codeigniter发送电子邮件时遇到问题 - 邮件正文中发送的邮件头

[英]Problem sending email with Codeigniter - Headers sent in the message body

在codeigniter中的电子邮件类有一个奇怪的问题。 当我直接向我的Gmail帐户电子邮件地址发送电子邮件时,它可以正常工作。 但是,如果我将电子邮件发送到其他电子邮件地址并使用POP3将该电子邮件地址导入gmail,则由于某种原因,所有标头都包含在邮件中。

这是发送电子邮件的代码:

$this->email->clear();
$config['mailtype'] = "html";
$this->email->initialize($config);
$this->email->set_newline("\r\n");
$this->email->from('email@example.com', 'Website');
$this->email->to('accountthatimportstogmail@url.com');
$this->email->message($message);

当电子邮件发送到通过POP3导入gmail的帐户时,这是收件箱中的内容:

Date: Fri, 7 Jan 2011 15:07:04 +0000

From: "Website" <email@example.com>
Reply-To: "email@example.com" <email@example.com>
X-Sender: email@example.com

X-Mailer: CodeIgniter

X-Priority: 3 (Normal)

Message-ID: <4d272c1835479@example.com>

Mime-Version: 1.0

Content-Type: multipart/alternative; boundary="B_ALT_4d272c1835c46"




This is a multi-part message in MIME format.

Your email application may not support this format.



--B_ALT_4d272c1835c46

Content-Type: text/plain; charset=utf-8

Content-Transfer-Encoding: 8bit



this is the email message content





--B_ALT_4d272c1835c46

Content-Type: text/html; charset=utf-8

Content-Transfer-Encoding: quoted-printable

<html>
<body>
       <p>this is the email message content
</p>
</body>
</html>



--B_ALT_4d272c1835c46--

这听起来好像不是一个codeigniter问题。

您已经测试并显示消息正确发送。 您已经看到它发送到其他POP3帐户。 GMail能够获得POP3帐户数据,但却能够获得它。

下一个测试是使用客户端,比如Thunderbird(桌面)或Squirrel Mail(web),看看邮件是否从这些来源正确到达您。

下一个测试(如果不是)是在另一台服务器上使用与另一个提供商完全不同的POP3帐户,看看那里发生了什么。

这样做的原因是错误(正如你所看到的)似乎发生在POP3的交付和到达GMail之间。 我想要的故障查找器是确定这是一个格式错误的电子邮件或(这将是我的猜测)如果POP3服务器有任何异常配置,CI可能没有考虑到。

为了节省时间,我会在CodeIgniter论坛上发帖询问是否有其他人遇到过这些问题,在这种情况下可能存在已知的错误或错误或某种缺点。 在等待答案时,我会看着我的POP3服务器并询问它为什么以我不喜欢的方式中继消息,如果这是POP3,服务器类型或配置问题。 最重要的是,一旦我知道问题是什么,我如何更改我的电子邮件发送软件(CI)以发送不会以这种方式破坏的电子邮件?

但首先需要了解问题的根本原因。

请使用$ config ['protocol'] ='sendmail';

由于邮件被传递到相关地址(pop3帐户)codeigniter / sendmail / php / dns / smtp,所有参与邮件传递的人都已经完成了对他们的期望。 此外,您还证明了Google的邮件提取程序已经配置,可以从pop3服务器成功获取邮件并将其放入收件箱,也没有任何问题。

您想知道的是如何更改从您的Gmail帐户收件箱中显示的pop3邮件导入方式,如果您的邮件已完成,我们的工作已完成,这超出了您定位的受众范围。

解决问题的一种方法是将邮件直接发送到您的Gmail帐户。 作为主要收件人(发送给您,您可以逗号分隔多个帐户)或CC或BCC地址中的任何一个,这将避免从POP3获取。 然后,这将根据发送给您的任何其他消息显示在您的收件箱中,并按照惯例隐藏标题。

这适合我。

让我们知道事情的结果......

我相信这篇文章可以帮助您: 使用CodeIgniter发送电子邮件

克莱伯。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM