【问题标题】:Why don't I see any mails in sent mail or the recipient doesn't receive any mail that is sent using sendmail in php? [duplicate]为什么我在已发送邮件中看不到任何邮件,或者收件人没有收到任何使用 php 中的 sendmail 发送的邮件? [复制]
【发布时间】:2015-05-17 05:50:59
【问题描述】:

php代码:

<?php
$to       = 'vickee@hotmail.com';
$subject  = 'Testing sendmail.exe';
$message  = 'Hi, you just received an email using sendmail!';
$headers  = 'From: vignesh@gmail.com' . "\r\n" .
            'Reply-To: vignesh@gmail.com' . "\r\n" .
            'MIME-Version: 1.0' . "\r\n" .
            'Content-type: text/html; charset=iso-8859-1' . "\r\n" .
            'X-Mailer: PHP/' . phpversion();
if(mail($to, $subject, $message, $headers))
    echo "Email sent";
else
    echo "Email sending failed";
?>

我在 gmail 中启用了第二步验证。是不是因为这个问题,我在运行 php 代码时收到“已发送电子邮件”。但是发送或收件人的收件箱或垃圾文件夹中没有邮件。有没有替代方法?如果是这样,请评论链接以逐步使用该服务发送电子邮件。

编辑:

我已经按照http://arpanthakrar.blogspot.in/2013/06/send-email-from-localhostwamp-server.html中的说明设置了邮件部分

如果有任何其他方法或对此方法进行更改,请告诉我。

【问题讨论】:

  • 据我所知,如果没有经过适当的验证,您不能简单地使用 gmail 服务器发送电子邮件。有关更多信息,请参阅问题:stackoverflow.com/questions/712392/…

标签: php email sendmail


【解决方案1】:

让我澄清一下电子邮件的“发送”:

$to       = 'vickee@hotmail.com';
...
$headers  = 'From: vignesh@gmail.com' . "\r\n" .

这意味着:给“vickee,来自vignesh”发送一封电子邮件

不意味着:“使用 gmail 向 vickee 发送电子邮件”

相反,PHP 使用本地邮件程序来传输邮件。邮件由您的邮箱、您的提供商 MTA 等传递到 hotmail 上的 vivicee 收件箱。

您的 gmail 帐户与此无关。因此,查看您的 gmail 帐户的“已发送”文件夹是没有意义的,而是查看 vickees 收件箱。

编辑

邮件的“真正”发送由本地 MTA(邮件传输代理)完成。这可以是 sendmail、postfix 或任何其他本地服务。

它不是 PHP 的一部分或任务。

PHP 仅将邮件传递给配置的 MTA(通常是本地)。

因此:您需要先检查您的电子邮件设置!

【讨论】:

  • 我也没有收到任何来自vicee 的收件箱的邮件。如何检查发送邮件是否有错误?
  • 邮件的“真实”发送由本地 MTA(邮件传输代理)完成。这可以是 sendmail、postfix 或任何其他本地服务。它不是 PHP 的一部分或任务。 PHP 仅将邮件传递给配置的 MTA(通常是本地)。因此:您需要先检查您的电子邮件设置!
猜你喜欢
  • 2012-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-12
  • 2015-10-15
  • 2014-08-28
相关资源
最近更新 更多