当我尝试使用mandrill通过此PHPMailer方法发送邮件时,它显示错误,因为SMTP Connect()失败。这是我的代码:
<?php
require 'class.phpmailer.php';
$mail = new PHPMailer;
$mail->IsSMTP();
$mail->Host = 'smtp.mandrillapp.com';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
$mail->SMTPAuth = true;
$mail->Username = 'MANDRILL_USERNAME';
$mail->Password = 'API_KEY';
$mail->From = 'abc@xyz.com';
$mail->FromName = 'Your From name';
$mail->AddAddress('def@tuv.com');
$mail->IsHTML(true);
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the HTML message body <strong>in bold!</strong>';
$mail->AltBody = 'This is the body in plain text for non-HTML mail clients';
if(!$mail->Send()) {
echo 'Message could not be sent.';
echo 'Mailer Error: ' . $mail->ErrorInfo;
exit;
}
echo 'Message has been sent';
?>
我无法找到问题所在。我还包括了从中获取class.phpmailer.php文件的phpmailer文件。请帮忙......
答案 0 :(得分:2)
SMTP连接错误通常是由于托管服务提供商或ISP阻止您正在使用的端口。我们在Mandrill KB中提供了有关此问题的其他信息,并提供了问题排查步骤:Why am I getting a "Relay Access Denied" error trying to send through SMTP?
答案 1 :(得分:2)
GoDaddy的共享托管计划存在一些限制。
如果您尝试从GoDaddy主机发送电子邮件,则需要执行此操作 使用以下SMTP服务器:
relay-hosting.secureserver.net另外,请记住GoDaddy SMTP服务器非常繁忙,这意味着它可能需要一些时间 您的电子邮件已发送给收件人。
不要浪费时间并尝试配置其他SMTP服务器(Gmail 等)处理你的外发电子邮件。 GoDaddy已阻止此选项 并且仅限于上面提到的服务器。
如果链接仍然有效......幸运的你。