[英]Laravel7 + Queue & Supervisor => Mails are not sent
我正在使用队列异步发送订单确认,而不是让用户在前端等待付款完成。 这在使用php artisan queue:work
时工作正常 - 一切都按应有的方式处理。
现在,当我想让主管处理发送时,作业始终失败,并出现以下异常:
[2020-08-17 19:54:12] 生产。错误:无法在没有发件人地址的情况下发送消息 {"exception":"[object] (Swift_TransportException(code: 0): Cannot send message without a sender address at /var /www/backend/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/AbstractSmtpTransport.php:195)
这显然表明.env
中没有配置发件人地址。 但是,在config/mail.php
中也有。 我假设主管无法读取.env
MAIL_FROM_ADDRESS
无法访问.env
但我不确定如何实现。
这是我的主管配置(按照Laravel Docs中的说明):
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/backend/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/backend/worker.log
stopwaitsecs=3600
我正在使用QUEUE_CONNECTION=database
。 服务器在 ubuntu 上运行 nginx。
我也已经尝试让主管使用user=root
没有成功。
有没有人经历过类似的事情?
尝试设置目录:
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
directory=/var/www/backend
command=php artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/backend/worker.log
stopwaitsecs=3600
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.