2012-07-19 61 views
0

我已经编写了一个正常的发送邮件功能在我的PHP密码恢复代码。 代码工作正常,我可以发送和接收邮件... 唯一的问题是速度和时间。 大约一个小时后,我从我的服务器收到邮件。 我该怎么做才能立即收到邮件。Php发送邮件的速度

我的PHP代码是这样:

mail($user_email, "Password", $message, 
"From:admin <[email protected]>\r\n" . 
"X-Mailer: PHP/" . phpversion());      
+2

检查邮件标题,看它是否在服务器上设置 - 这可能是邮件服务器问题而不是您的代码,您使用的是什么邮件服务器?它在哪里托管?你有联系你的主机? – 2012-07-19 08:02:59

+0

检查您收到的邮件中收到的邮件标题,以确定问题是否在您的最后或收件人的 – 2012-07-19 08:16:44

+0

感谢您回答... 我正在使用Mochahost vps服务器。 – Nikhil 2012-07-19 08:19:19

回答

2

这是最有可能不是PHP的问题,而是与你的托管服务提供商的问题。一些共享主机在发送邮件之前排队发送邮件。特别是GoDaddy对此很可怕......所以如果这恰好是您的虚拟主机,那么这就是问题所在。我已经看到他们的电子邮件有时需要3-4小时在一个便宜的共享Linux服务器上。

+0

我正在使用mochahost vps ...我应该联系他们的这个 – Nikhil 2012-07-19 08:19:51

+0

是的。您也可以从您的电子邮件标题中获得一些提示(一旦您收到一个提示...查看完整的标题来源并查看每次反弹中的时间戳)。我的钱在你的网络主机上做一些奇怪的事情。 – techtheatre 2012-07-19 08:23:33

0

确保您发送的电子邮件对垃圾邮件过滤器来说是干净的。您必须有良好的信誉才能正确传送您的电子邮件。当你编写自己的电子邮件发件人的脚本,确保:

  1. 格式的电子邮件为“李四”,而不仅仅是“[email protected]”。垃圾邮件过滤器喜欢看到你知道发件人的名字。
  2. 使用相同的回复电子邮件地址。如果它被添加到收件人联系人列表中,那么这是通过垃圾邮件过滤器的最佳方法之一。
  3. 如果您的电子邮件格式为HTML格式,请确保HTML是干净的并添加替代文字。
  4. 检查SMTP服务器的IP地址是否具有良好的信誉。

我也推荐使用第三方的服务专业提供电子邮件一样MailChimp谁具有良好的信誉(从视图的ISP点),在那里你可以开设一个账户,免费发送交易电子邮件(以添加发送通讯)。他们有一个API,它允许你将你的应用程序和他们的系统连接起来。