【发布时间】:2013-10-13 09:25:40
【问题描述】:
我有这个代码,我想用它来向我的客户发送邮件,PARAMETERS CENSORED (***):
include 'phpmailer/class.phpmailer.php';
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->Host = "smtp.email.it";
$mail->Port = 25; // or 587 465
$mail->IsHTML(true);
$mail->SMTPSecure = 'tls';
$mail->Username = "***";
$mail->Password = "***";
$mail->SetFrom('***');
$mail->Subject = "Test";
$mail->Body = "hello";
$mail->AddAddress('***');
if(!$mail->Send())
{
echo "Mailer Error: " . $mail->ErrorInfo;
}
else
{
echo "Message has been sent";
}
它连接但给出错误:
2013-10-13 09:13:25 CLIENT -> SERVER: EHLO *SITE_CENSORED*
2013-10-13 09:13:25 SMTP ERROR: EHLO command failed: Method EHLO is not supported.
2013-10-13 09:13:25 SMTP NOTICE: EOF caught while checking if connected
SMTP connect() failed.
Mailer Error: SMTP connect() failed.
【问题讨论】:
-
看起来 SMTP 服务器配置错误,如果
EHLO失败,phpmailer 应该尝试HELO,但服务器在无法识别的命令后关闭连接。你可以试试changing order of these commands -
@dev-null-dweller 现在是
Method HELO is not supported... -
@AnthonySterling 即使没有 SSL 或 TLS 我也可以使用它,有什么办法吗?