
Я пытаюсь отправить почту через phpmailer с помощью smtp. Я использую хост, который использую в 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";
}
решение1
Не зная, какой почтовый сервер вы используете, сложно сказать точно, но многие люди блокируют свои почтовые серверы, чтобы разрешить вам отправлять почту только с одобренных IP-адресов. Похоже, это как раз тот случай. Вам нужно поговорить с человеком, который управляет вашим почтовым сервером, и попросить его разрешить веб-серверу отправлять почту.
решение2
Попробуйте найти, если Вы не в черном списке:
решение3
Если кто-то копается в проблеме выше, пожалуйста, убедитесь, что ваше имя пользователя совпадает с SetFrom
адресом. Некоторые конфигурации почтового сервера не допускают разных адресов отправителя. Другой вариант — просто добавить почтовый псевдоним к фактическому почтовому аккаунту.