«Ошибка SMTP: не удалось аутентифицироваться» в PHPMailer - PullRequest
47 голосов
/ 16 октября 2010

Я использую PHPMailer в простом скрипте для отправки электронной почты через Gmail и получаю «Неизвестную ошибку» (по крайней мере, для меня!):

Ошибка SMTP: не удалосьаутентификации.Ошибка: ошибка SMTP: не удалось аутентифицироваться.

Ошибка сервера SMTP: 5.7.1 Имя пользователя и пароль не приняты.Узнайте больше на 535 5.7.1 http://mail.google.com/support/bin/answer.py?answer=14257 p38sm2467302ybk.16

Я читал о настройке OpenSSL для соединений SSL / TLS и сделал это.Apache и PHP настроены должным образом (с расширением OpenSSL, работающим на PHP, и mod_ssl, работающим на Apache 2.2.16).

Это сценарий PHP:

 <?php
  require_once ("PHPMailer\class.phpmailer.php");
  $Correo = new PHPMailer();
  $Correo->IsSMTP();
  $Correo->SMTPAuth = true;
  $Correo->SMTPSecure = "tls";
  $Correo->Host = "smtp.gmail.com";
  $Correo->Port = 587;
  $Correo->UserName = "foo@gmail.com";
  $Correo->Password = "gmailpassword";
  $Correo->SetFrom('foo@gmail.com','De Yo');
  $Correo->FromName = "From";
  $Correo->AddAddress("bar@hotmail.com");
  $Correo->Subject = "Prueba con PHPMailer";
  $Correo->Body = "<H3>Bienvenido! Esto Funciona!</H3>";
  $Correo->IsHTML (true);
  if (!$Correo->Send())
  {
    echo "Error: $Correo->ErrorInfo";
  }
  else
  {
    echo "Message Sent!";
  }
?>

Имя пользователя и пароль:ОК, и я попробовал в Thunderbird, без проблем.Я также использовал SSL-аутентификацию и порт 465, получая ту же ошибку.

Ответы [ 14 ]

0 голосов
/ 12 апреля 2018

Нет проблем с вашим кодом.

Выполните два простых шага, чтобы отправить электронное письмо с phpmailer.

  • Вы должны отключить двухэтапную настройку подтверждения для аккаунта Google, если вы включили.

  • Включите ON разрешить доступ к менее защищенному приложению.

0 голосов
/ 14 декабря 2017

Ошибка SMTP: не удалось подтвердить подлинность У меня была такая же проблема.Мне помогли следующие шаги по устранению неполадок.

  • Я отключил двухфакторную аутентификацию в своей учетной записи gmail.
  • Я разрешил менее защищенным приложениям получать доступ к моей учетной записи gmail.Чтобы заставить его работать, мне нужно было перейти на myaccount.google.com -> Sign-in & security -> Apps with account access и повернуть Allow less secure apps на ON (в нижней части страницы).
  • На этомшаг, когда я попытался зарегистрировать пользователя, я получил бы ту же ошибку.Google отправил бы мне предупреждающее сообщение о том, что у кого-то есть мой пароль и логин заблокирован.
  • Затем Gmail предоставит вам варианты.Вы либо нажимаете, было ли это действие вашим, либо нет.Выберите опцию, чтобы действие было вашим.
  • Попробуйте зарегистрироваться еще раз.Теперь он должен работать.
0 голосов
/ 10 февраля 2016

Это была проблема selinux. Я только что обновил приведенную ниже часть в файле / etc / selinux / config SELINUX=permissive (это был SELINUX = соблюдение ранее). затем просто перезагрузите систему, дав перезагружать Теперь почта идет без каких-либо хлопот. Конфигурация

From Email Address : [noreply@yourdomain.com]
From Name : [your domain name]
SMTP Host   : smtp.gmail.com
Type of Encryption : SSL
SMTP Port : 465
SMTP Authentication  : YES
Username : [your mail id]
Password : [your password]
0 голосов
/ 30 января 2015

У меня была такая же проблема с аутентификацией. Исправление состояло в том, чтобы настроить двухэтапную проверку и создать специальный пароль приложения для устройства (сообщения об ошибках для блокировки устройства будут отображаться в настройках вашей учетной записи -> «Уведомления и оповещения», если у вас возникла проблема с моей)

...