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-адреса, это я"?
Ответы
Ответ 1
Я попробовал то же самое и получил ту же ошибку. Поэтому я лично проверил свою учетную запись gmail, и у меня появилось сообщение из самой Gmail, сообщив мне, что они заблокировали попытку доступа к моей учетной записи электронной почты.
Они показали возможность отключить этот параметр безопасности, посетив https://www.google.com/settings/security/lesssecureapps.
Ответ 2
Перейдите по этой ссылке и отключите разблокировку Защитный код
https://accounts.google.com/b/0/DisplayUnlockCaptcha
Ответ 3
Попробуйте следующее:
Ответ 4
https://www.google.com/settings/security/lesssecureapps и активируйте его. https://accounts.google.com/b/0/DisplayUnlockCaptcha и активируйте его.
'port' => env('MAIL_PORT', 587), <br>
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
Ответ 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% уверен, что это твоя проблема, потому что у меня была эта проблема.