我尝试使用 php mail() 函数从本地主机发送一封电子邮件到我的雅虎电子邮件帐户,返回说我成功发送了电子邮件,但我没有收到任何电子邮件。我一直在阅读并尝试许多所谓的“简单方法”来发送电子邮件,但结果令人失望,它们都不适合我。以下是代码、配置和错误消息。有人可以启发我吗?谢谢。
php代码
<?php
$to = 'myemail@yahoo.com';
$subject = 'Fake sendmail test';
$message = 'If we can read this, it means that our fake Sendmail setup works!';
$headers = 'From: myemail@egmail.com' . "\r\n" .
'Reply-To: myemail@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if(mail($to, $subject, $message, $headers)) {
echo 'Email sent successfully!';
} else {
die('Failure: Email was not sent!');
}
?>
php.ini 的配置(我使用的是 gmail 邮件服务器)
SMTP =smtp.gmail.com
smtp_port =587
sendmail_from = myemail@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\"-t"
sendmail.ini 的配置
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=tls
error_logfile=error.log
debug_logfile=debug.log
auth_username=myemail@gmail.com
auth_password=mypassword
force_sender=myemail@gmail.com
端口 587 的 sendmail 错误日志中的错误消息
2002 年 13 月 10 日 13:36:41 :必须先发出 STARTTLS 命令。k4sm129639pbd.11 - gsmtp