Laravel 使用默认凭据发送邮件

我正在尝试通过 laravel 发送邮件。没有 Laravel 对我来说没有问题

$headers = "From: ".FROM_MAIL; mail(TO_MAIL, "Subject", "Text", $headers);

在 Laravels .env 文件中,我必须设置一些凭据,但我真的需要这样做吗?因为它似乎可以使用服务器中任何位置设置的默认凭据。

所以我的问题是:如何正确配置 .env 文件?

如果我什么都不设置:

MAIL_DRIVER= MAIL_HOST= MAIL_PORT= MAIL_USERNAME= MAIL_FROM_ADDRESS=mail@hoster.com MAIL_PASSWORD= MAIL_ENCRYPTION= MAIL_FROM_NAME="From Name"我收到以下错误: Too few arguments to function Illuminate\Support\Manager::createDriver(), 0 passed in /mnt/web409/e0/11/59802411/htdocs/test/crm/vendor/laravel/framework/src/Illuminate/Support/Manager.php on line 96 and exactly 1 expected

仅供参考:我正在使用 Strato 的服务器!

感谢您的帮助!


Qyouu
浏览 90回答 2
2回答

翻过高山走不出你

如果你正在使用 laravel 你实际上不应该直接使用 mail() 因为这是一个原生的 php 函数阅读: https: //laravel.com/docs/7.x/mail那应该向您解释,您应该如何在 Laravel 中处理电子邮件。如果您不知道这封电子邮件是如何工作的,可能就是这种情况,您可能正在寻找使用类似于本机 mail() 函数的驱动程序“sendmail”(https://www.php.net/manual /zh/function.mail.php )如果这是一个不错的选择,取决于您的目标、要求和服务器设置

泛舟湖上清波郎朗

对于所有和我有同样问题的人:在 config/mail.php 文件中,'sendmail' =>'/usr/sbin/sendmail -bs',必须替换为'sendmail' => '/usr/sbin/sendmail -t -i',.此外,配置必须类似于我在 Danny Ebbers 回复下的评论中的配置
打开App,查看更多内容
随时随地看视频慕课网APP