2014-09-02 3 views
1

У меня проблема с phpMailer. Он отлично работает на локальном хосте, но дает ошибку аутентификации, когда я загружаю его на веб-хост.Отправка почты с помощью phpMailer, но работает на localhost

«КЛИЕНТ: 535 некорректные данные аутентификации»

Настройки являются smtp.gmail.com, порт 587 с шифрованием TLS, как указано на http://email.about.com/od/accessinggmail/f/Gmail_SMTP_Settings.htm

Я заменил реальный адрес веб-сайта с www.mywebsiteaddress.com ,

Здесь:

2014-08-28 22:55:00 SERVER -> CLIENT: 220-lp.linkdatacenter.net ESMTP Exim 4.82 #2 Thu, 28 Aug 2014 22:55:00 +0000 220-We do not authorize the use of this system to transport unsolicited, 220 and/or bulk e-mail. 
2014-08-28 22:55:00 CLIENT -> SERVER: EHLO www.mywebsiteaddress.com 
2014-08-28 22:55:00 SERVER -> CLIENT: 250-lp.linkdatacenter.net Hello sigmaengco.com [213.131.64.210] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250-STARTTLS 250 HELP 
2014-08-28 22:55:00 CLIENT -> SERVER: STARTTLS 
2014-08-28 22:55:00 SERVER -> CLIENT: 220 TLS go ahead 
2014-08-28 22:55:00 CLIENT -> SERVER: EHLO www.mywebsiteaddress.com 
2014-08-28 22:55:00 SERVER -> CLIENT: 250-lp.linkdatacenter.net Hello sigmaengco.com [213.131.64.210] 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250 HELP 2014-08-28 22:55:00 CLIENT -> SERVER: AUTH LOGIN 
2014-08-28 22:55:00 SERVER -> CLIENT: 334 VXNlcm5hbWU6 
2014-08-28 22:55:00 CLIENT -> SERVER: bGl0dGxlcGVhcmxzY2VudGVyQGdtYWlsLmNvbQ== 
2014-08-28 22:55:00 SERVER -> CLIENT: 334 UGFzc3dvcmQ6 
2014-08-28 22:55:00 CLIENT -> SERVER: dXRvcGlhdXRvcGlh 
2014-08-28 22:55:02 SERVER -> CLIENT: 535 Incorrect authentication data 
2014-08-28 22:55:02 SMTP ERROR: Password command failed: 535 Incorrect authentication data 
2014-08-28 22:55:02 CLIENT -> SERVER: QUIT 
2014-08-28 22:55:02 SERVER -> CLIENT: 221 lp.linkdatacenter.net closing connection 
SMTP connect() failed. Message could not be sent.Mailer Error: SMTP connect() failed. 

Вот соответствующая часть кода, я заменил реальную информацию с поддельной информацией.

require_once('PHPMailer-master/PHPMailerAutoload.php'); 

    $mail = new PHPMailer; 

    $mail->isSMTP();          // Set mailer to use SMTP 
    $mail->Host = 'smtp.gmail.com';      // Specify main and backup SMTP servers 
    $mail->SMTPDebug = 2; 
    $mail->SMTPAuth = true;        // Enable SMTP authentication 
    $mail->Username = '[email protected]';     // SMTP username 
    $mail->Password = 'mypassword';       // SMTP password 
    $mail->SMTPSecure = 'tls';       // Enable encryption, 'ssl' also accepted 
    $mail->Port = 587;         // set the SMTP port for the GMAIL 
    $mail->From = '[email protected]'; 
    $mail->FromName = 'my website name'; 
    //$mail->addAddress('[email protected]', 'Joe User');  // Add a recipient 
    $mail->addAddress('[email protected]');    // Name is optional 
    $mail->addReplyTo($email, $name); 
+0

Это должно дать вам хорошее представление о том, почему она не удалась: 'SMTP ОШИБКА: команда пароля неудачен: 535 Неправильные данные аутентификации 2014-08-28 22: 55: 02' –

+0

@ l'L'л Это тот же самый точный пароль, используемый на localhost, который отлично работает. Это связано с настройками на сервере веб-хостинга. – Amzraptor

+1

Для тестирования: ваш пароль не должен содержать никаких специальных символов и никаких умляутов. –

ответ

0

Я использовал этот код, и сообщение отправлено успешно.

$mail->IsSMTP(); 
$mail->SMTPAuth = true; 
$mail->Host = "mail.mysite.com"; //email account on my hosting 
$mail->Port = 25; // port on non ssl-setting 
$mail->Username = "myusername"; //username to log into hosting 
$mail->Password = "mypassword"; //password to log into hosting 
Смежные вопросы