PHPMailer SMTP Ошибка 550 - PullRequest
       0

PHPMailer SMTP Ошибка 550

2 голосов
/ 24 октября 2010

Я использую PHPMailer для отправки электронной почты через SMTP на общем сервере (мой хостинг - Softsys). Электронная почта отправляется в порядке на адреса электронной почты на том же сервере (то есть @ домен является моим веб-доменом). Однако, когда я пытаюсь изменить получателя на @gmail (или любой внешний адрес), я получаю следующий журнал ошибок:

SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "550 <jDoe@gmail.com> No such user here"
SMTP -> get_lines(): $data is "550 <jDoe@gmail.com> No such user here"
SMTP -> FROM SERVER:550 <jDoe@gmail.com> No such user here
SMTP -> ERROR: RCPT not accepted from server: 550 <jDoe@gmail.com> No such user here
SMTP -> get_lines(): $data was ""
SMTP -> get_lines(): $str is "250 OK"
SMTP -> get_lines(): $data is "250 OK"
SMTP -> FROM SERVER: 250 OK
Message could not be sent.
Mailer Error: SMTP Error: The following recipients failed: jDoe@gmail.com

Это проблема с моим сервером или моим кодом? Должен ли я просто связаться с администратором моего сервера? Заранее благодарю за любую помощь!

Вот мой код

require("class.phpmailer.php");
$mail = new PHPMailer();

$mail->IsSMTP();
$mail->Host = "mail.mywebsite.com";
$mail->SMTPAuth = true;
$mail->Username = "myemail";
$mail->Password = "********";
$mail->From = "myemail@mywebsite.com";
$mail->FromName = "John Doe";
$mail->AddAddress("jDoe@gmail.com");    

$mail->IsHTML(true);

$mail->Subject = "Here is the subject";
$mail->Body    = "This is the HTML message body <b>in bold!</b>";
$mail->AltBody = "This is the body in plain text for non-HTML mail clients";

if(!$mail->Send())
{
   echo "Message could not be sent. <p>";
   echo "Mailer Error: " . $mail->ErrorInfo;
   exit;
}

echo "Message has been sent";

Ответы [ 2 ]

0 голосов
/ 27 декабря 2010

Если вы пытаетесь отправить электронное письмо на gmail, gmail сообщает, что jDoe@gmail.com не существует, попробуйте использовать jdoe@gmail.com (удалите заглавные буквы).Если нет, попробуйте использовать электронную почту, которую вы действительно знаете.

0 голосов
/ 24 октября 2010

У вас есть доступ к оболочке для вашей учетной записи?Затем вы можете проверить некоторые вещи, такие как запись MX, которую вы получаете, с помощью команды «dig mx gmail.com».Если нет, то лучше всего связаться с вами, Хостер.Я предполагаю, что кто-то на том же сервере настроил домен gmail.com.Я предполагаю, что они используют exim как MTA (из-за ответа на сообщение).Может случиться так, что exim пытается разрешить собственную доставку host = local из-за домена gmail.com на сервере.Вы пробовали другие домены / адреса электронной почты?

...