SMTP – >错误:服务器不接受RCPT:554 5.7.1:客户端主机拒绝:访问被拒绝

我正在尝试通过phpmailer发送邮件与smtp.i使用主机,我用我的outlook相同的用户名和密码。我得到一个错误。任何人都可以帮助我如何解决这个问题。

我的错误:

SMTP -> ERROR: RCPT not accepted from server: 554 5.7.1 : Client host rejected: Access denied SMTP Error: The following recipients failed: xxxxxxxxx.com Mailer Error: SMTP Error: The following recipients failed: xxxxxxxxxxxx.com SMTP server error: 5.7.1 : Client host rejected: Access denied 

这是代码:

 $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 = 'ssl'; // secure transfer enabled REQUIRED for GMail $mail->Host = "xxxxxxxxxxxxx"; $mail->Port = "587"; // or 587 $mail->IsHTML(true); $mail->Username = "xxxxxxxxx"; $mail->Password = "xxxxxxxxxx"; $mail->SetFrom("[email protected]"); $mail->Subject = "Price Change Notification"; $mail->Body = "Test E-mail"; $mail->AddAddress("[email protected]"); if(!$mail->Send()){ echo "Mailer Error: " . $mail->ErrorInfo; } else{ echo "Message has been sent"; } 

不知道你正在运行哪个邮件服务器,很难具体,但许多人locking他们的邮件服务器,只允许你从批准的IP地址发送邮件。 这似乎是这种情况。 您需要与pipe理邮件服务器的人交谈,让他们允许Web服务器发送邮件。

试试看,如果你不在黑名单:

http://www.spamhaus.org/query/ip/10.0.0.10

只要有人在上述问题挖掘,请确保您的用户名相同的SetFrom地址。 某些邮件服务器configuration不允许不同的发件人地址。 另一个选项是简单地添加邮件别名到实际的邮件帐户。