В связи с приложением 5.7 laravel я использую плагин themsaid / laravel-mail-preview для тестирования писем, отправляемых с использованием шаблонов snowfire / beautymail
и для этого в .env моего локального проекта у меня есть варианты:
MAIL_DRIVER=preview
# MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
, который работает нормально и в подкаталог "/ storage / email-previews" моей локальной системы скопированы электронные письма.
Но при переходе к моему серверному приложению (Ubuntu 18 под Digital Ocean) у меня проблема в том, что электронные письма отправляются, а получатели их не получают.
На моем сервере я установил ssmtp и в файле /etc/ssmtp/ssmtp.conf я добавил кредитные карты моей учетной записи gmail и при отправке тестового электронного письма
с получателями почты ($ to, $ subject, $ message, $ headers) эти письма получают ok ok
Но почему я не получаю электронные письма с шаблонами snowfire / beautymail?
В .env моего серверного приложения:
MAIL_DRIVER=smtp
# MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=587
MAIL_USERNAME=gmailnick@gmail.com # the same parameters I have in /etc/ssmtp/ssmtp.conf
MAIL_PASSWORD=XXXXXXXXXXXXXXXX # my gmail factor authentication password
MAIL_ENCRYPTION=null
В логах вижу
# grep -riI ssmtp /var/log
/var/log/syslog.1:Nov 5 23:34:06 nsn-do-lamp sSMTP[3432]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection w18-v6sm13037750wrn.66 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 00:34:06 nsn-do-lamp sSMTP[4242]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 00:34:06 nsn-do-lamp sSMTP[4242]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 00:34:08 nsn-do-lamp sSMTP[4242]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection b71-v6sm476787wma.13 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 01:34:07 nsn-do-lamp sSMTP[5342]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 01:34:07 nsn-do-lamp sSMTP[5342]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 01:34:09 nsn-do-lamp sSMTP[5342]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection c24-v6sm77924472wre.44 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 02:34:07 nsn-do-lamp sSMTP[6155]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 02:34:07 nsn-do-lamp sSMTP[6155]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 02:34:08 nsn-do-lamp sSMTP[6155]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection m13-v6sm6126322wrw.14 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 03:34:07 nsn-do-lamp sSMTP[7181]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 03:34:08 nsn-do-lamp sSMTP[7181]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 03:34:09 nsn-do-lamp sSMTP[7181]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection t13-v6sm26521034wrn.22 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 04:34:04 nsn-do-lamp sSMTP[7905]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 04:34:04 nsn-do-lamp sSMTP[7905]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 04:34:06 nsn-do-lamp sSMTP[7905]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection v11-v6sm12069528wrt.40 - gsmtp) uid=0 username=root outbytes=860
/var/log/syslog.1:Nov 6 05:34:05 nsn-do-lamp sSMTP[8799]: Creating SSL connection to host
/var/log/syslog.1:Nov 6 05:34:05 nsn-do-lamp sSMTP[8799]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Nov 6 05:34:07 nsn-do-lamp sSMTP[8799]: Sent mail for root@smtp.gmail.com:587 (221 2.0.0 closing connection g16-v6sm20220322wrr.38 - gsmtp) uid=0 username=root outbytes=860
У меня установлен cron на моем сервере, и вышеприведенное сообщение похоже на то, что этот cron отправляет электронные письма ...
это проблема файла .env моего сервера?
Что может быть не так?
МОДИФИЦИРОВАННЫЙ БЛОК № 2:
Я изменил .env своего приложения:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=gmailnick@gmail.com # the same parameters I have in /etc/ssmtp/ssmtp.conf
MAIL_PASSWORD=XXXXXXXXXXXXXXXX # my gmail factor authentication password
MAIL_ENCRYPTION=null
и очистил кеш
Но при отправке письма я получил ошибку:
Expected response code 250 but got code "530", with message "530 5.7.0 Must issue a STARTTLS command first. r1-v6sm13862441wrt.59 - gsmtp "
Что не так?
Спасибо!