Sendmail返回true但不发送邮件

时间:2015-01-27 07:34:29

标签: php sendmail

我已经在这里阅读了一些文章。但没有人适应我的问题。我使用sendmail作为我的wamp服务器。是的,它返回true“发送的消息”但是当我检查电子邮件时没有消息。我想知道为什么。我甚至在youtube中观看了很多教程,并按照说明一步一步地进行。

<?php
$to ='espadadave@yahoo.com';
$subject='Notification';
$message='You have just received an email notification';
$headers='From: love95@gmail.com' . "\r\n" .
'Reply-To: love95@gmail.com';
if ( mail($to, $subject, $message, $headers))
echo "message sent";
else
echo "not sent";
?>

5 个答案:

答案 0 :(得分:0)

试试这个$ header

$ headers =&#39;来自:love95@gmail.com' 。 &#34; \ r \ n&#34;

&#39;回复:&#39;回复:love95@gmail.com' 。 &#34; \ r \ n&#34;

&#34;内容类型:text / html;字符集= UTF-8&#34; 。 &#34; \ r \ n&#34 ;;

&#39; X-Mailer:PHP /&#39; 。 phpversion();

答案 1 :(得分:0)

函数mail()返回true表示邮件已成功传输到相应的SMTP服务器。您无法控制服务器是否真正发送了邮件,或者邮件是否已到达收件人。

答案 2 :(得分:0)

来自邮件功能的真实邮件意味着您的电子邮件已添加到邮件队列中。您应该检查sendmail日志和邮件队列。

http://www.electrictoolbox.com/show-sendmail-mail-queue/

http://www.cyberciti.biz/faq/linux-unix-bsd-clear-sendmail-queue/

答案 3 :(得分:0)

当您使用XAMPP或类似的normaly时,没有SMTP服务器发送邮件。

请查看文件夹mailoutput或其类似内容。

服务器将消息保存为该文件夹中的.txt文件。

如果您确实要发送邮件,则需要安装邮件服务器。 (Somteimes包中已有一个但未激活)

答案 4 :(得分:0)

1)如果您使用的是Localhost,则需要安装邮件服务器 2)检查邮箱中的垃圾邮件文件夹 3)尝试使用phpmailer或swiftmailer lib 4)检查邮件过滤设置