验证电子邮件PHP

时间:2011-06-29 19:35:19

标签: php email spam spf

我有一个网络应用程序,需要向客户的“员工”电子邮件地址发送电子邮件。防止我的邮件被标记为垃圾邮件的最佳方法是什么?

例如,如果我拥有charles@gmail.com,我希望能够在我的应用程序中使用PHP发送“来自”该地址的邮件,而不会收到“此邮件可能尚未发送给... ..“消息。

现在我只是在PHP中使用mail()函数,其中包含From,Return Path和X-Mailer变量的Headers。

到目前为止,关于SPF和DKIM的所有内容我都非常困惑,所以我很感激任何建议。感谢。

4 个答案:

答案 0 :(得分:2)

这是一个非常冗长的主题,lots thingsconsider

最重要的规则是不使用HTML并仅发送人们想要的正确邮件,并且收件人不会将自己标记为垃圾邮件。

答案 1 :(得分:2)

  

例如,如果我拥有   charles@gmail.com,我希望能够   发送邮件“从”该地址发送   PHP在我的应用程序中,没有得到   “此消息可能尚未发送   通过....“消息。

如果你拥有一个gmail地址,你可以通过gmail的SMTP服务发送邮件,但请记住,gmail有一个500 email sent limit。以下是描述如何use gmail's SMTP server with the popular PHPMailer

的主题
  

现在我只是使用邮件()   PHP中的函数,带有Headers   From,Return Path和X-Mailer   变量

外包这可能是一种方法,例如:

  

我们还提供200免费计划   每天电子邮件积分。

要阅读定价,请访问http://sendgrid.com/pricing.html

  

没有每月承诺,没有最低要求,   无限。只需支付你使用的费用   $ 0.001 /电子邮件或更少。

  

电子邮件收费为0.10美元   每千人。

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

仅列举几个非常便宜的使用而没有任何麻烦/设置。

答案 2 :(得分:1)

如果不使用mail()函数,而是使用PEAR mailer package等SMTP邮件程序,则可以使用谷歌自己的SMTP服务器发送邮件。这将要求您向要发送的Google帐户提供正确的凭据。这应该避免你遇到的问题。

答案 3 :(得分:0)

您需要确保的首要事项之一是电子邮件"来自:..."确实来自您的服务器,例如your_mailings@yourcompany.com,它必须存在并且是脚本工作的服务器上的有效电子邮件。您应该尝试在脚本顶部设置sendmail用户(假设Linux服务器):

ini_set('sendmail_from', 'your_email@your_server.com');

然后你添加"Reply-To:"标题并使用你的员工地址,收件人至少似乎有一封可以回复的电子邮件。如果没有它,你甚至可能无法获得垃圾邮件,那么你就会被阻止。

这个帖子显示了一些内容,并注意了PHPMailer上的注释 - 这是一种处理邮件的好方法,我发现它比简单的mail();更成功 PHP mail form isn't working