2011-06-29 77 views
1

我有一個網絡應用程序,需要發送電子郵件給客戶'從'員工的電子郵件地址。防止我的郵件被標記爲垃圾郵件的最佳方式是什麼?身份驗證電子郵件PHP

例如,如果我擁有[email protected],我希望能夠在我的應用程序中發送郵件「發自」該地址與PHP的地址,而不會收到「此郵件可能未被髮送。 ...「 信息。

現在我只是使用PHP中的mail()函數,Headers爲From,Return Path和X-Mailer變量。

我對於目前爲止關於SPF和DKIM所讀過的所有內容感到非常困惑,所以我很感激任何建議。謝謝。

+0

一些spamfilters使用反向DNS檢查發件人域名確實屬於發件人(防止欺騙mailaddresses)。你將不能夠做到這一點的gmail.com域名:) – PeeHaa

回答

2

這是一個很長的主題,lotsthingsconsider

最重要的規則是不使用HTML,只發送人們想要的正確郵件,並且收件人不會自己標記爲垃圾郵件。

+0

谷歌自己的狀態,「如果電子郵件未與Gmail發送,但發件人在郵件中包含的認證數據,我們會告訴您發件人名稱和驗證郵件的服務。「 https://support.google.com/mail/troubleshooter/2411000?p=sent_warning&rd=1 這可能是最好的解決方案 - 人知道如何真正做到這一點? –

1

如果不是使用mail()函數,而是使用SMTP郵件程序(如PEAR mailer package),那麼您可以使用谷歌自己的SMTP服務器發送郵件。這將要求您向希望發送的Google帳戶提供正確的憑據。這應該避免你遇到的問題。

2

舉例來說,如果我自己 [email protected],我希望能夠 在我的應用程序發送郵件的「發件人」該地址, PHP,沒有得到 「這個消息可以沒有通過......發送「 」消息。

如果您擁有Gmail地址,您可以通過Gmail的SMTP服務發送郵件,但請記住,Gmail有一個500 email sent limit。以下是描述如何使用use gmail's SMTP server with the popular PHPMailer的主題。

現在,我只是用電子郵件()函數 在PHP中,有標頭 發件人,返回路徑和X-梅勒 變量。

外包這可能是使用例如要走的路:

我們還提供帶每天200個 電子郵件積分免費方案。

要閱讀定價訪問http://sendgrid.com/pricing.html

無月租committments,沒有最低, 沒有限制。只需支付您使用 的電子郵件,價格爲$ 0.001/email或更少。

的電子郵件爲$ 0.10 的收費‰。

http://aws.amazon.com/ses/pricing/

只是僅舉幾例,這是非常便宜的,沒有任何麻煩/安裝使用。

0

您需要確保的第一件事情是,電子郵件「From:...」確實來自您的服務器,例如[email protected],它必須存在並且是服務器上的有效電子郵件,其中腳本作品。你應該嘗試在你的腳本的頂部設置sendmail的用戶(假設Linux服務器):

ini_set('sendmail_from', '[email protected]_server.com');

然後添加一個"Reply-To:"頭,並使用你的員工或許地址和收件人將至少似乎已得到了一個可以回覆的電子郵件。如果沒有這些,你甚至可能不會成爲垃圾郵件,你會在那裏被阻塞。

此線顯示了一些,並注意在PHPMailer的意見 - 這是處理郵件的好方法,我發現它比更成功簡單mail(); PHP mail form isn't working