2017-02-18 12 views
0

Я переношу приложение Laravel 5.0 на 5.4 и пытаюсь проверить почту в своей локальной среде. Для этого я всегда использовал Anitix SMTP Imposter. Вот что моя конфигурация почты выглядит в моем .env:Ожидаемый код ответа 220, но получил код «500» при отправке почты в Laravel 5.4 в локальной среде

MAIL_DRIVER=smtp 
MAIL_HOST=127.0.0.1 
MAIL_PORT=25 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPT=null 

Это всегда работал во всех предыдущих версиях Laravel (4, 4.2, 5.0), но вдруг с 5.4 я получаю следующее сообщение об ошибке:

Swift_TransportException in AbstractSmtpTransport.php line 383: Expected response code 220 but got code "500", with message "500 Command not recognized "

Я попытался отключить Avast, используя альтернативные программы, как Papercut, играя с конфигурацией с помощью SSL или TLS, но я не могу понять, что причина этого. Есть идеи?

ответ

1

Первая попытка: php artisan config: cache и перезапустите локальный сервер, возможно, Laravel использует старые почтовые данные.

Для целей разработки https://mailtrap.io/ содержит все параметры, которые необходимо добавить в файл .env. Например:

Host: mailtrap.io 
Port: 25 or 465 or 2525 
Username: cb1d1475bc6cce 
Password: 7a330479c15f99 
Auth: PLAIN, LOGIN and CRAM-MD5 
TLS: Optional 

В противном случае для целей реализации вы можете получить учетные данные SMTP, которые будут добавлены в .env файл из почты (например, Gmail) все п

После добавления необходимо перезагрузить сервер

+0

Спасибо, команда config: cache ничего не изменила. Я установил его с mailtrap.io, и он работает именно так, но мне все равно хотелось бы знать, почему он не работает с моими локальными приложениями, как в предыдущих версиях Laravel. – Chris

0

Вы можете использовать https://mailtrap.io/ , он предоставит вам все необходимые сведения для проверки почтовых функций на вашем локальном компьютере, включая имя пользователя, пароль, порт, хост и т. Д.

если у вас все еще есть проблема с выпуском, используйте эти данные в файле config/mail.php в своем проекте вместо использования файла .env.

return array(
     "driver" => "smtp", 
     "host" => "mailtrap.io", 
     "port" => 2525, 
     "username" => "mailtrap.io_your_username", 
     "password" => "mailtrap.io_your_password", 
     "sendmail" => "/usr/sbin/sendmail -bs", 
     "pretend" => false 
); 
Смежные вопросы