如何配置Laravel mail.php以使用usuall邮件功能?

Ole*_*leg 12 php email laravel

我需要通过mail()php函数发送电子邮件.问题是,我不知道该怎么做:(我已经读过某些地方,我必须将config/mail.php中的'driver'参数更改为'sendmail'.

默认情况下,它看起来像这样:'driver'=> env('MAIL_DRIVER','smtp'),

现在,它看起来像这样:'driver'=>'sendmail',

还试过这个:'driver'=>'mail',

但是,邮件功能仍然不起作用.请帮帮我.提前致谢)

Max*_*ola 36

要像使用PHP函数那样执行相同的操作,在大多数情况下,您应该按以下方式配置Laravel:

使用sendmail,at .env:

MAIL_DRIVER=sendmail
Run Code Online (Sandbox Code Playgroud)

不需要主机,用户,密码,端口和加密.

此时,您可以检查它是否已经有效,但有时还需要下一步.

在config/mail.php中设置一个新的.env选项:

'sendmail' => env('MAIL_SENDMAIL', '/usr/sbin/sendmail -bs')
Run Code Online (Sandbox Code Playgroud)

在.env中设置sendmail路径.您可以查看sendmail_pathphpinfo(),但通常是这一个:

MAIL_SENDMAIL='/usr/sbin/sendmail -t -i'
Run Code Online (Sandbox Code Playgroud)

  • 如果你要在那里编辑它,则需要在 `config/mail.php` 中是 `'sendmail' => env('MAIL_SENDMAIL', '/usr/sbin/sendmail -bs'),`。不要忘记引号和最后的逗号 (3认同)
  • 对于 Laravel 7 及更高版本,请使用 `MAIL_MAILER=sendmail` (2认同)

Ikb*_*bel 17

要使用运行的电子邮件服务器localhost,您的.env文件应如下所示(PHP mail函数不需要用户名或密码)

MAIL_DRIVER=smtp
MAIL_HOST=localhost
MAIL_PORT=25
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=null
Run Code Online (Sandbox Code Playgroud)

然后,更新配置缓存:

php artisan config:cache
Run Code Online (Sandbox Code Playgroud)

  • 非常感谢,朋友!!!我已经搜索了这个答案很长时间,这很糟糕,laravel 官方文档没有提供此信息。你是最好的,@lbel! (2认同)

Add*_*Ltd -32

您可以设置邮件配置.env文件,例如

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=youremail@gmail.com
MAIL_PASSWORD="password"
MAIL_ENCRYPTION=tls
Run Code Online (Sandbox Code Playgroud)

还可以在 config/mail.php 中设置配置,例如:

'from' => ['address' => 'youremail@gmail.com', 'name' => 'Test'],

然后你可以清除缓存:

php artisan config:cache
php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)

  • 这些不是使用 PHP 的 mail() 函数的正确设置。该功能不需要用户名和电子邮件。如果您想从 Gmail 等其他服务器发送电子邮件,则可以使用这些设置。 (10认同)
  • @wmac是的-谢谢!我和OP有完全相同的问题,令人难以置信的是我现在在这个问题上浪费了多少时间,而这方面的信息却很少。**如何在 Laravel 5.5 中使用 PHP 的 mail() 函数**?是否可以?*就是那个问题。我不断被告知更改为“MAIL_DRIVER=smtp”并输入我的 Gmail 帐户凭据,但我不希望这样!我对此投了反对票,因为它没有回答问题。 (3认同)
  • 这不适用于 php 的 sendmail 配置。这是一个 SMTP。 (3认同)