我的网站在虚拟服务器上,一切都很棒!我将我的托管转移到GoDaddy,当我给自己发送一封电子邮件以检查它是否有效时,它会抛出此错误:
SMTP - >错误:无法连接到服务器:连接被拒绝(111) 以下发件人地址失败:root @ localhost:调用Mail()而未连接Mailer错误:以下发件人地址失败:root @ localhost:调用Mail()而未连接
正如我所说,它在我的旧主机上工作,我已经在gmail端做了必要的东西,我的凭据是100%正确的。但不是我的新1我必须配置php.ini文件吗?
require_once('includes/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->SMTPSecure = 'tls'; // secure transfer enabled REQUIRED for GMail
$mail->Host = "smtp.gmail.com";
$mail->Port = 587; // or 587
$mail->IsHTML(true);
$mail->Username = "user@gmail.com";
$mail->Password = "password";
$mail->Subject = "Sponsorship enquiry";
$mail->Body = "<p>Sponsorship form details:</p>";
$mail->Body .= "<p>name: ".$name."</p>";
$mail->Body .= "<p>email: ".$email."</p>";
$mail->Body .= "<p>sport: ".$sport."</p>";
$mail->Body .= "<p>message: ".$message."</p>";
$mail->AddAddress("exeuity@gmail.com");
if(!$mail->Send()){
echo "Mailer Error: " . $mail->ErrorInfo;
}
else{
$_SESSION['success'] = "Email successfully sent AIM will be in contact with you shortly!";
header("location:athletes.php");
exit();
}
答案 0 :(得分:0)
首先,update your PHPMailer - 您的代码基于一个旧示例。
您还应该read the troubleshooting docs。
我可以看到你没有设置&#39;来自&#39;地址,因此它默认为root@localhost
,这可能就是您被拒绝的原因,因为它不是来自外部世界的可路由地址,因此您应该致电{{1有合理的价值观。
GoDaddy以阻止或重新路由出站电子邮件而臭名昭着,因此请检查您是否真正在与gmail通信 - 验证通过TLS连接时获得的SSL证书。