我有一些問題與CodeIgniter的電子郵件系統:一對夫婦的問題重新:笨的emailer
首先,我發出的郵件(註冊確認)都陷入在Gmail標準的垃圾郵件過濾器和其他郵件客戶端。我如何解決這個問題?像Facebook這樣的公司如何通過持續不斷的電子郵件獲得?
其次,郵件在本地工作,但一旦我們部署它不再運行(不發送電子郵件),但所有其他形式運行得很好。任何人都遇到過這樣的問題?
感謝您的幫助!
我有一些問題與CodeIgniter的電子郵件系統:一對夫婦的問題重新:笨的emailer
首先,我發出的郵件(註冊確認)都陷入在Gmail標準的垃圾郵件過濾器和其他郵件客戶端。我如何解決這個問題?像Facebook這樣的公司如何通過持續不斷的電子郵件獲得?
其次,郵件在本地工作,但一旦我們部署它不再運行(不發送電子郵件),但所有其他形式運行得很好。任何人都遇到過這樣的問題?
感謝您的幫助!
我無法真正回答你的第一個問題 - 它並不是CodeIgniter特有的。你只需要確保你的電子郵件看起來不像垃圾郵件。總之 - 無法保證您的電子郵件不會在垃圾郵件過濾器中結束。
至於第二個問題,我希望您的生產服務器需要正確配置電子郵件。您可能需要configure CodeIgniter才能正常發送電子郵件。我建議設置一個SMTP服務器(或使用現有的服務器),而不是使用我認爲CodeIgniter默認使用的標準PHP郵件。
關於垃圾郵件,大多數組織都對他們如何防止垃圾郵件(不想發佈有助於垃圾郵件發送者的信息)保密,在某些情況下,他們實際上並不知道 - 這是一個明顯的例證是貝葉斯過濾 - 但是,例如,hotmail使用完全不負責任的志願者軍隊來手動分類電子郵件。
請做並獲得spamassassin的副本,並嘗試對標準規則的工作方式進行逆向工程。明顯的事情要檢查是:
1)大寫
2)不提「V」字
3)使避地段確保你有一個當前和限制性SPF 1.0政策發表
4)確保從具有A和PTR DNS記錄
5地址您的發送)請提供一個答覆,並從它們使用您的域名,在地址
0123電郵地址的郵包在本地工作,但一旦我們部署它,它不再運行
不發送電子郵件
哪個?這些是完全分開的兩件事。如果代碼崩潰(如果是這樣,爲什麼你沒有提供錯誤的詳細信息),那麼它可能是一個PHP版本問題或與MTA(或PHP郵件配置)連接的問題。
後者是MTA本身的問題。
由於PHP郵件故障導致的99.9%的問題與PHP無關,並且與MTA有關。
爲您的MTA啓用詳細的錯誤報告並查看它失敗的位置。
C.
您可能必須在您的服務器上配置與本地開發環境不同的電子郵件。我不得不在過去。
有兩種基本方式PHP可以發送郵件:
通過所謂的「sendmail的」一個UNIX程序(僅在非Windows服務器且僅當它安裝 - 與您的託管服務提供商核)
通過SMTP服務器。
如果您已將CodeIgniter配置爲使用SENDMAIL,請檢查以確保Sendmail路徑正確。您的託管服務提供商通常在其在線文檔中提供此處。
如果您使用SMTP,您需要確保您的服務器可以聯繫SMTP服務器。您可以通過SSH登錄服務器並鍵入「telnet your.smtpserver.com 25」來完成此操作。如果您收到有關無法連接的錯誤消息,則表明您的主機提供商連接到郵件服務器時出現問題。
我試圖發送消息後立即啓用生產服務器上的日誌記錄(http://bit.ly/4pprd6)並添加log_message('error', $this->email->print_debugger())
,從而能夠診斷此問題。
感謝菲爾 - 我認爲我們的電子郵件非常標準,基本上是Facebook的帳戶激活電子郵件的複製粘貼,它只是不斷被抓住。我會研究它。 立即嘗試不同的配置選項 – Walker 2010-06-14 15:46:57
嘗試發送基本電子郵件,看看它是否通過垃圾郵件。如果是這樣,請嘗試重新編寫電子郵件。 – ggfan 2010-06-14 16:00:46
標準的PHP郵件可以使用現有的MTA。 – symcbean 2010-06-14 16:10:20