2009-12-27 100 views
0

相關,可能重複PHP mail stopped workingPHP`郵件()`問題

您好;

我有一個網站託管在GoDaddy,處理幾個新聞網站和電子郵件的文章摘要。它一直工作正常,直到兩天前我停止接收電子郵件。 mail()返回true,併發送基本文本電子郵件時,我收到它們,只有HTML我不能收到!任何想法的原因或如何解決這個問題?

感謝


更新: 這是我使用的代碼(PHP):

$headers = 'From: Aggregator Daemon' . "\r\n";

$headers .= 'MIME-Version: 1.0' . "\r\n";

$headers .= 'Content-type: text/html; charset=windows-1252' . "\r\n";

$mailres=mail("[email protected]","GN Aggregator - $today Bulletin",$ebody,$headers);

感謝

+0

你的意思是不能接受,他們沒有到達或他們到達破碎? – 2009-12-27 09:21:28

+0

檢查您的垃圾郵件過濾器,並檢查GoDaddy是否有新政策禁止您發送HTML電子郵件。 – You 2009-12-27 09:25:44

+0

@Pekka:我無法在我的POP客戶端中收到它們 – Moutaz 2009-12-27 09:28:31

回答

0

我首先想到的是,也有一些是靠不住的頭,特別是內容類型或編碼。

也就是說,GoDaddy服務器或其中一個MTA導致您的電子郵件因某種原因被拒絕而發生了變化。

沒有看到某些代碼就沒有辦法分辨出來。

另外,請閱讀this question瞭解更多信息。

1

我總是推薦在處理髮送郵件時使用類似SwiftMailer的東西。它很好地處理所有頭文件等。

0

嘗試設置Return-Path標題,以便收到退回的電子郵件。這不能在「附加標題」參數中設置,而是在mail函數的「附加參數」參數中設置。在Linux的託管帳戶,你這樣做:

mail($to, $subject, $ebody, $headers, '-f [email protected]'); 
0

我會推薦使用PHP Mailer。我在腳本中使用它很容易實現,並且它可以正常工作。它也被WordPress使用。