【问题标题】:What's the correct configuration to send emails using Sendmail in Laravel?在 Laravel 中使用 Sendmail 发送电子邮件的正确配置是什么?
【发布时间】:2020-09-25 14:13:37
【问题描述】:

我正在使用 Laravel 7,我想通过 Laravel Mail 门面使用 Sendemail 驱动程序发送电子邮件。当我使用 PHP 邮件功能时它可以工作,但我想使用 Laravel Mail 门面。

我的 .env 文件电子邮件配置:

MAIL_DRIVER=sendmail
MAIL_SENDMAIL='/usr/sbin/sendmail -t -i'

我在 config/mail.php 中的默认邮件设置:

'default' => env('MAIL_MAILER', 'sendmail'),
'mailers' => [
    'smtp' => [
        'transport' => 'smtp',
        'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
        'port' => env('MAIL_PORT', 587),
        'encryption' => env('MAIL_ENCRYPTION', 'tls'),
        'username' => env('MAIL_USERNAME'),
        'password' => env('MAIL_PASSWORD'),
    ],
    'ses' => [
        'transport' => 'ses',
    ],
    'sendmail' => [
        'transport' => 'sendmail',
        'path' => '/usr/sbin/sendmail -bs',
    ],
    'log' => [
        'transport' => 'log',
        'channel' => env('MAIL_LOG_CHANNEL'),
    ],
    'array' => [
        'transport' => 'array',
    ],
],

我已经按照文档中的说明创建了 Mail 类。什么是使它工作的正确配置?

【问题讨论】:

  • 也许你应该从config/mail.phpsendmail部分发帖。因为这就是你要找的司机。
  • 我已经从 config/mail.php 添加了邮件部分
  • 在 laravel 7 中,环境变量更改为 MAIL_MAILER。您应该使用该键指定驱动程序

标签: laravel email sendmail laravel-7 laravel-mail


【解决方案1】:

首先,将默认MAIL_MAILER 更改为使用Sendmail。

MAIL_MAILER=sendmail

然后在 config/mail.php 中,更新 Sendmail 行。

'sendmail' => [
    'transport' => 'sendmail',
    'path' => env('MAIL_SENDMAIL', '/usr/sbin/sendmail -bs')
],

最后,如果您需要更改 MAIL_SENDMAIL 值,请将此行添加到您的 .env 中。

MAIL_SENDMAIL='/usr/sbin/sendmail -t -i'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-28
    • 2017-06-05
    • 2013-12-22
    • 1970-01-01
    • 2017-01-20
    • 2018-07-22
    • 2013-11-22
    • 2019-12-20
    相关资源
    最近更新 更多