Отправка через smtp-сервер
Отправлять будем через smtp-сервер Яндекса, для этого нужно получить пароль приложения и внести правильные настройки в Laravel.
Генерация пароля приложений для SMTP Яндекс
Переходим в свой почтовый ящик и выбераем пункт Почтовые программы
. В данном разделе нужно проставить галочку рядом с пунктом С сервера imap.yande.ru по протоколу IMAP
. В способе авторизации оставляем галочку только напротив пункта Пароли приложений и OAuth-токены
:
Далее открываем страницу Управление аккаунтом
и в разделе Пароли и авторизации
создаем новый пароль для входа в сторонние программы. В высветившимся окне подтверждаем действие, нажав на кнопку Включить пароли приложений
:
Чтобы создать пароль для приложения, вводим пароль от своего аккаунта:
В типе приложений выбераем Почта
и введите название для пароля. Вводим название сервиса, чтобы не путаться, затем нажмите на кнопку Создать
:
Автоматом будет сгенерирован пароль, его нужно использовать, как Пароль SMTP
и Пароль IMAP
при задании параметров в .env
Laravel.
Настройка параметров .env
Прописываем нужные данные для нужных перменных:
.envMAIL_MAILER=smtp
MAIL_HOST=smtp.yandex.com
MAIL_PORT=587
MAIL_USERNAME=адрес_почты@yandex.ru
MAIL_PASSWORD=полученный_пароль
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=адрес_почты@yandex.ru
MAIL_FROM_NAME=Тема письма
Последние две переменные могут быть заданны как на глобальном уровне в файле .env
, так и локально для каждого почтового события в классе отправки почты.
После изменений в файле .env
, необходимо очистить конфигурационный кеш:
php artisan config:cache