2016-03-10 2 views
0

Я пытаюсь отправить электронную почту с Laravel но почему-то не работает, я получаю следующее сообщение:Laravel отправки электронной почты не работает

Swift_TransportException в AbstractSmtpTransport.php линии 383: Ожидаемый код 220 ответа, но получил код "421", с сообщением "421 не удается подключиться к серверу SMTP 52.20.34.166 (52.20.34.166:587), подключение ошибка 10060"

мой файл .env выглядит следующим образом:

APP_ENV=local 
APP_DEBUG=true 
APP_KEY=rFhHPTfEg4nxYEeqVzoQWX70a0AA5uw3 

DB_HOST=localhost 
DB_DATABASE=test 
DB_USERNAME=root 
DB_PASSWORD= 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

MAIL_DRIVER=smtp 
MAIL_HOST=mailtrap.io 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=123456789 
MAIL_ENCRYPTION=tls 

мой mail.php выглядит следующим образом:

<?php 

return [ 

    'driver' => env('MAIL_DRIVER', 'mail'), 
    'host' => env('MAIL_HOST', ''), 
    'port' => env('MAIL_PORT', 587), 
    'from' => ['address' => '[email protected]', 'name' => 'test'], 
    'encryption' => env('MAIL_ENCRYPTION', 'tls'), 
    'username' => env('MAIL_USERNAME'), 
    'password' => env('MAIL_PASSWORD'), 
    'sendmail' => '/usr/sbin/sendmail -bs', 
    'pretend' => false, 

]; 

А внутри моего Controlller я назвал это так:

# Send Mail 
    Mail::send('emails.email', $data, function($message) use ($data) 
    { 
     $message->from($data['email'] , $data['title']); 
     $message->to('[email protected]', 'my name')->subject('contact request'); 
    }); 

Я не могу найти ошибку в своем коде. Спасибо за помощь.

+0

Попробуйте изменить порт 587 на 25, 465 или 2525 – avip

ответ

0

Другая вещь Я замечаю, что mailtrap дает вам конкретные username и password. Вы пытались использовать их вместо [email protected];123456789?

+0

Да, это как-то ответить. Я забыл создать учетную запись на mailtrap.io –

0

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

Возможно, вы хотите изменить конфигурацию from на config/mail.php, чтобы показать свое имя и на почту.

Я говорю об этом, потому что вижу, что у вас есть хозяин mailtrap.io, но [email protected] недействительный пользователь для этого хоста.

И, может быть, 587 к MAIL_PORT - неправильное значение.

-1

Вы должны использовать эту команду:

php artisan config:cache 

Он работает для него, прежде чем ваш измененный файл окр и введите следующую команду и запустить его. Это будет работать.