【问题标题】:Laravel - Sending Emails Through Exchange ServerLaravel - 通过 Exchange 服务器发送电子邮件
【发布时间】:2017-07-28 05:39:41
【问题描述】:

对于我的 Laravel 5.1 应用程序,我有一个本地 Exchange 服务器和用户帐户,我想通过它发送电子邮件。以下是我的 .env 文件中的值:

MAIL_DRIVER=smtp
MAIL_HOST=[IP ADDRESS]
MAIL_PORT=587
MAIL_USERNAME=[USERNAME]
MAIL_PASSWORD=[PASSWORD]
MAIL_ENCRYPTION=null

使用tls 作为加密值时出现错误,为了测试,我现在一直在使用null。但后来我得到Failed to authenticate on SMTP server with username "*******" using 1 possible authenticators的错误

我不确定应该从哪里着手进行故障排除。似乎它正在使用 NTLM 身份验证来验证凭据。我是否应该检查 Exchange 服务器以查看它是否已为此设置?我使用的凭据是正确的。还是我的配置有问题?

提前致谢。

【问题讨论】:

    标签: php email smtp laravel-5.1 exchange-server


    【解决方案1】:

    当您使用端口 587 (MSA) 时,您可能希望在应用程序中切换到端口 465 (smtps) 以进行测试。 Because MSA should accept email after authentication(例如在 SMTP AUTH 之后)。

    另外检查您是否可以通过端口 25 通过普通 telnet 发送电子邮件(例如 here 解释)。如果您需要 TLS,那么您可以按照 here 的说明使用 OpenSSL 进行检查,例如 Exchange 服务器上是否存在应用程序不信任的自签名 SSL 证书(例如 Laravel)。

    根据上面的故障排除,您可能会收到更好的错误消息,它不是基于应用程序的。然后可以使用它在 MS Exchange 服务器上进行故障排除(如果需要,因为托管 Laravel 应用程序的服务器上的 telnet 测试失败)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-03
      • 2016-12-28
      • 2011-03-30
      • 2018-10-17
      • 2013-11-12
      • 1970-01-01
      • 1970-01-01
      • 2020-10-02
      相关资源
      最近更新 更多