2015-07-13 3 views
8

Я пытаюсь отправить электронное письмо в приложение laravel. Вот мой .env файл:Laravel 5: Отправка электронной почты

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=********** 
MAIL_ENCRYPTION=tls 

А вот Mail::send метод:

Mail::send('email', ['name' => "EE"], function($m){ 
      $m->to('[email protected]', 'Malik')->subject('Subjet of the email'); 
     }); 

А вот ошибка:

Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 250 but got code "530", with message "530 5.7.0 Must issue a STARTTLS command first. s16sm7748968wib.16 - gsmtp" 

Любая помощь?

+0

, где вы с помощью этого кода, локального или сервера? – Tarunn

+1

Если u означает код Mail :: send (---), то я использую его в контроллере. – Saani

+1

Я имею в виду ... u r на локальном хосте или сервере !? – Tarunn

ответ

13

Ну, я понял. Infact электронная почта не была аутентифицирована, потому что это письмо потребовало аутентификации мобильного телефона после входа в систему. перейдя на другой адрес электронной почты, который требует только учетных данных для входа, он сработал.

.env 
MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=yourpassword 
MAIL_ENCRYPTION=tls 
2

GMail SMTP требует шифрования. Попробуйте изменить настройку следующим образом.

MAIL_PORT=465 
MAIL_ENCRYPTION=ssl 
+0

попробовал без выгоды: ошибка Swift_TransportException в строке AbstractSmtpTransport.php 383: ожидаемый код ответа 250, но получил код «530», с сообщением «530 5.7.0» Сначала должен выпустить команду STARTTLS. W8sm20719292wja.15 - gsmtp " – Saani

+0

что такое настройки вашего драйвера ''driver' => env ('MAIL_DRIVER', 'smtp')' в настройках почты ?? – Tarunn

+0

Это настройки драйвера: ''driver' => env ('MAIL_DRIVER', 'smtp')' – Saani

1

Я сделал следующую ошибку: я фактически не включают

'encryption' => env('MAIL_ENCRYPTION'), 

для возвращения массива в mail.php. Я включил свой хост, порт, имя пользователя и пароль в mail.php, но не метод шифрования (метод шифрования, который я включил только в файл .env), поэтому попытка использования этих упомянутых решений привела к изменению результатов сообщений об ошибках , создал большую путаницу, но никто не решил проблему. Надеюсь, это поможет кому-то!

0

Если вышеуказанные комментарии не работают, попробуйте очистить кэш:

php artisan cache:clear 
php artisan config:clear 
+1

Это предложение или ответ? –