Подтвердить что ты не робот

Laravel Gmail не работает, "Имя пользователя и пароль не принимаются. Подробнее..."

Когда я пытаюсь отправить электронное письмо через мой сайт, на котором запущен Laravel 4, я получаю это исключение:

{"error":{"type":"Swift_TransportException","message":"Expected response code 250 but got code \"535\", with message \"535-5.7.8 Username and Password not accepted. Learn more at\r\n535 5.7.8 http:\/\/support.google.com\/mail\/bin\/answer.py?answer=14257 y70sm14744455qgd.3 - gsmtp\r\n\"","file":"\/var\/www\/vendor\/swiftmailer\/swiftmailer\/lib\/classes\/Swift\/Transport\/AbstractSmtpTransport.php","line":386}}

Вот моя почтовая конфигурация:

return array(
  'driver' => 'smtp',
  'host' => 'smtp.gmail.com',
  'port' => 465,
  'from' => array('address' => '[email protected]', 'name' => 'myname'),
  'encryption' => 'ssl',
  'username' => '[email protected]',
  'password' => 'lol',
  'sendmail' => '/usr/sbin/sendmail -bs',
  'pretend' => false,
);

Я попытался отключить ссылку, которую я нашел, перейдя по этой теме, но это не помогло.

Есть ли способ сказать Google "остановить блокировку этого IP-адреса, это я"?

4b9b3361

Ответ 1

Я попробовал то же самое и получил ту же ошибку. Поэтому я лично проверил свою учетную запись gmail, и у меня появилось сообщение из самой Gmail, сообщив мне, что они заблокировали попытку доступа к моей учетной записи электронной почты.

Они показали возможность отключить этот параметр безопасности, посетив https://www.google.com/settings/security/lesssecureapps.

Ответ 5

Я знаю, что это не отвечает на ваш вопрос... но я бы сказал, не используйте gmail для отправки SMTP.

Используйте службу, например mandrill/mailgun... IE - сервис, созданный для такого типа вещей. Смотрите мою настройку mandrill здесь:

http://laravel.io/forum/07-06-2014-mail-with-mandrill-doesnt-work?page=1#reply-10154

Mandrill бесплатно дает вам 12k электронных писем в месяц.

Ответ 6

У меня было много вопросов, которые нашли ответ для этого. Затем, после большого количества проб и ошибок, я нашел решение для этого. Большая часть решения выше работала для других, но это помогло мне до 50%.

Итак, вот как это сработало для меня (100%):

  • Активировать 2-х шаговую проверку в google
  • Теперь вы сможете создавать приложения. Откройте его.
  • Создайте новое приложение (другое приложение) и укажите свое имя приложения.
  • Теперь создайте пароль.

Далее в файле laravel, Goto.env и измените

    MAIL_USERNAME= 'App Name you created'
    MAIL_PASSWORD= 'Generated Password for that app'

Это позволит отправлять электронные письма из вашей учетной записи gmail. Пожалуйста, оставьте комментарий, если он не работает для вас.

Ответ 7

Вы активировали двухэтапную аутентификацию Google? Если это так, вам необходимо определить новый пароль для "конкретного приложения": http://www.google.com/landing/2step/.

Ответ 8

Удалите @gmail.com из имени пользователя, вы уже упомянули smtp. Так что не нужно @gmail.com на ваше имя пользователя. Я на 100% уверен, что это твоя проблема, потому что у меня была эта проблема.