![](/img/trans.png)
[英]Sending email using codeigniter and ajax, the email is sent but error message appears
[英]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.