0

我在 Windows 7 上使用 Xampp,我正在尝试使用 php mail() 函数向我的 gmail 发送邮件。(不使用像Phpmailer这样的库)

我试过使用:

  1. Mercury Mail - 脚本没有显示任何错误,并且 mail() 函数实际上返回 true

  2. 测试邮件服务器工具- 与水银邮件相同的问题

  3. 假发送邮件- 收到“连接超时”错误。

这些是我对 Fake Send Mail 的设置:

发送邮件.ini

smtp_server=smtp.gmail.com
smtp_port=587  (tried using 465)
error_logfile=error.log
debug_logfile=debug.log
auth_username=fromname@gmail.com
auth_password=pass

php.ini

sendmail_path = "\"E:\xampp\sendmail\sendmail.exe\" -t" has been commented out

这是我的代码:

<?php

$to      = 'toname@gmail.com';
$subject = 'the the';
$message = 'hello';
$headers = 'From: fromname@gmail.com' . "\r\n" .
    'Reply-To: fromname@gmail.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>

这是 telnet smtp.gmail.com 587 的结果:

220 mx.google.com ESMTP sb3sm19649093pac.14 - gsmtp
451 4.4.2 Timeout - closing connection. sb3sm19649093pac.14 - gsmtp
Connection to host lost.

我在这个论坛上遇到了类似的问题,但它仍然不适合我。

我在这里缺少什么,您能否提供我应该尝试的任何其他工具的链接?谢谢..

4

1 回答 1

0

您不应该使用 mail 命令,它在 Windows 上非常不稳定,实际上甚至不应该在 Linux 上使用。您应该使用PHPMailerLite 类的 Worx 的PHPMailer类。这将连接到 SMTP 服务器。

它为您提供了很多额外的选择。为了你自己,你应该尝试实现 PHPMailer 类!

于 2013-06-30T19:06:11.450 回答