如何解决如何在 Laravel 中使用自定义 SMTP 配置
我正在尝试使用自定义 SMTP 配置(不在 .env
文件中)发送电子邮件
我所做的尝试:
Config::set('mail.mailers.smtp.host',$emailConfig->MAIL_HOST);
Config::set('mail.mailers.smtp.port',$emailConfig->MAIL_PORT);
Config::set('mail.mailers.smtp.encryption',$emailConfig->email);
Config::set('mail.mailers.smtp.username',$emailConfig->email);
Config::set('mail.mailers.smtp.password',$emailConfig->password);
Config::set('mail.from.address',$emailConfig->MAIL_FROM_EMAIL);
Config::set('mail.from.name',$emailConfig->MAIL_FROM_NAME);
$user = (object)[
'email' => $item,'name' => substr($item,strpos($item,'@')),];
if ($i % $mailsCount == 0)$count++;
if ($user){
$thisBody = ElzahabyDynamicLaravelString($user,$body,$this->sign);
$thisSubject = ElzahabyDynamicLaravelString($user,$subject,$this->sign);
$when = Carbon::Now()->addMinutes($every*$count);
Mail::to($user)
->later($when,new EmailForQueuing($user,$thisBody,$thisSubject,$request->emailTemplate));
}
但是我遇到了一个错误:
Swift_TransportException: Cannot send message without a sender address in
解决方法
您是否在 .env 文件中设置了电子邮件配置? 像这样:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=tls
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。