Я пишу сценарий PHP, используя PHPMailer для автоматической отправки электронных писем.
В целях тестирования я использовал учетную запись Gmail с паролем приложения, и все работает отлично.
Когда я заменяю конфигурацию учетной записи Gmail своей профессиональной электронной почтой, скрипт подключения PHP продолжает загружаться некоторое время и заканчивается этим сообщением.
SMTPDebug установлен в 3.
2015-11-16 22:43:30 SERVER -> ЗАКАЗЧИК: + ОК, Довекот готов. 2015-11-16 22:43:30 КЛИЕНТ -> СЕРВЕР: EHLO localhost
Что это значит ?
Вот функция PHP, которую я использую для проверки соединения с почтовым сервером
<?php
require('../PHPMailer-master/PHPMailerAutoload.php');
function smtpMailer() {
$mail = new PHPMailer();
$mail->IsSMTP(); // active SMTP
$mail->SMTPDebug = 2;
$mail->Host = 'mail.mycompany.com';
$mail->Port = 587;
//$mail->Username = "[email protected]";
//$mail->Password = "mypassword";
$mail->SetFrom = "[email protected]";
$mail->FromName = 'foxy';
$mail->addAddress('[email protected]', 'John Doe');
$mail->WordWrap = 50;
$mail->Subject = 'Here is the subject';
$mail->Body = 'This is the body in plain text ';
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
}
smtpMailer();
?>
ошибка
2015-11-17 01:44:14 SERVER -> CLIENT: 220 mycompany.com ESMTP Ready 2015-11-17 01:44:14
CLIENT -> SERVER: EHLO localhost 2015-11-17 01:44:14
SERVER -> CLIENT: 250-mycompany.com Hello localhost 250 HELP 2015-11-17 01:44:14
CLIENT -> SERVER: MAIL FROM: 2015-11-17 01:44:15
SERVER -> CLIENT: 250 root@localhost... Sender ok 2015-11-17 01:44:15
CLIENT -> SERVER: RCPT TO: 2015-11-17 01:44:16
SERVER -> CLIENT: 503 non-authenticated user. Please check mail before sending. 2015-11-17 01:44:16 SMTP ERROR: RCPT TO command failed: 503 non-authenticated user. Please check mail before sending. 2015-11-17 01:44:16
CLIENT -> SERVER: QUIT 2015-11-17 01:44:16
SERVER -> CLIENT: 221 goodbye. 2015-11-17 01:44:16 SMTP Error: The following recipients failed: [email protected]: non-authenticated user. Please check mail before sending.
Mailer Error: SMTP Error: The following recipients failed: [email protected]: non-authenticated user. Please check mail before sending.
Спасибо .
Вот мой код, который работает, я использую
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->Username = "[email protected]";
$mail->Password = "password";
$mail->AddAddress($email);
$mail->FromName = "Any Text";
$mail->Subject = $sub;
$mail->IsHTML(true);
$mail->Body = $code;
$mail->Host = "192.168.20.47"; // Is IP example that I show here
$mail->Port = 25;
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->From = $mail->Username;
if ($mail->Send()) {
echo "Message send!";
}
else {
echo "Mailer Error: " . $mail->ErrorInfo;
}
надеюсь, это поможет.
Других решений пока нет …