【发布时间】:2016-09-27 20:39:13
【问题描述】:
当我从服务器发送电子邮件时,它给了我两个错误 -
SMTP 错误:无法连接到 SMTP 主机。无法发送消息。 邮件程序错误:SMTP 错误:无法连接到 SMTP 主机。
我在堆栈溢出的另一个答案上发现了许多提示,但不起作用。我尝试了端口号 465/587/65。如果我设置端口 587,即使下面的代码在我的本地系统上也能正常工作。但在服务器中,它不起作用。
require('class.phpmailer.php');
require('class.smtp.php');
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPSecure = "ssl";
$mail->SMTPAuth = true;
$mail->Host = "smtp.gmail.com";
$mail->Username = "FromEmailId";
$mail->Password = "Password";
$mail->Port = 465;
$mail->From = "FromEmailId";
$mail->AddAddress("ToEmail");
$mail->IsHTML(true);
$mail->Subject = "Here is the subject";
$mail->Body = "This is the HTML message body <b>in bold!</b>";
if(!$mail->Send())
{
echo "Message could not be sent. <p>";
echo "Mailer Error: " . $mail->ErrorInfo;
exit;
}
echo "Message has been sent";
【问题讨论】:
-
我认为这是服务器端错误
-
@Yogesh。感谢回复。但是我该如何解决呢?
-
亲爱的我也面临这个问题,但没有得到任何解决方案
-
你是什么主机?他们可能阻止了外发 SMTP(我知道这是因为我用于 VPS 的主机之一阻止了所有外发 SMTP,我必须要求他们针对特定情况取消阻止它。)。
-
你能用你肯定知道是正确的数据来测试这个吗?你能用其他 SMTP 服务器(如 yahoo)来测试吗?