【问题标题】:Error when I send email using Office365 in Laravel在 Laravel 中使用 Office365 发送电子邮件时出错
【发布时间】:2021-09-28 06:04:01
【问题描述】:

在 Laravel 7 中,我想使用 Office365 从我的应用程序发送电子邮件,尝试了电子邮件密码和应用程​​序密码均无效。

MAIL_MAILER=smtp
MAIL_HOST=smtp.office365.com
MAIL_PORT=587
MAIL_USERNAME=my-email-here
MAIL_PASSWORD=my-email-password-here
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=my-email-here
MAIL_FROM_NAME="App name"

在上面的代码中 MAIL_PASSWORD 是我的电子邮件密码而不是应用程序密码 这个配置给了我以下错误

Failed to authenticate on SMTP server with username "support@tingsapp.com" using 2 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code "451", with message "451 4.7.0 Temporary server error. Please try again later. PRX4  [MRXP264CA0044.FRAP264.PROD.OUTLOOK.COM]
". Authenticator XOAUTH2 returned Expected response code 235 but got code "535", with message "535 5.7.3 Authentication unsuccessful [MRXP264CA0044.FRAP264.PROD.OUTLOOK.COM]

在第二次尝试中,我将在 office.com 中创建的应用密码设置为 MAIL_PASSWORD 值,但我得到了同样的错误。

更改 .env 后,我运行 php artisan cache:clearphp artisan config:cache

请问有什么遗漏的吗

【问题讨论】:

    标签: php laravel email office365


    【解决方案1】:

    您需要将密码用双引号括起来。

    替换:MAIL_PASSWORD=你的密码 使用:MAIL_PASSWORD="yourpassword"

    更改 .env 后运行:

    php 工匠缓存:清除

    【讨论】:

      【解决方案2】:

      您必须像这样在 MAIL_FROM_ADDRESS 上使用您的电子邮件而不是密码

      MAIL_MAILER=smtp
      MAIL_HOST=smtp.office365.com
      MAIL_PORT=587
      MAIL_USERNAME=my-email-here
      MAIL_PASSWORD=my-email-password-here
      MAIL_ENCRYPTION=tls
      MAIL_FROM_ADDRESS=my-email-here
      MAIL_FROM_NAME="App name"
      

      或者您可以使用 smtp-mail.outlook.com 作为 MAIL_HOST

      MAIL_MAILER=smtp
      MAIL_HOST=smtp-mail.outlook.com
      MAIL_PORT=587
      MAIL_USERNAME=my-email-here
      MAIL_PASSWORD=my-email-password-here
      MAIL_ENCRYPTION=tls
      MAIL_FROM_ADDRESS=my-email-here
      MAIL_FROM_NAME="App name"
      
      

      【讨论】:

      • 感谢@Yudiz 回复,MAIL_FROM_ADDRESS 实际上有我的电子邮件而不是我的电子邮件密码,这是复制粘贴错误。但我会尝试你的第二个解决方案。
      • 我得到同样的错误,Failed to authenticate on SMTP server with username "support@tingsapp.com" using 2 possible authenticators. Authenticator LOGIN returned Expected response code 235 but got code "535", with message "535 5.7.3 Authentication unsuccessful [ZR0P278CA0107.CHEP278.PROD.OUTLOOK.COM] ". Authenticator XOAUTH2 returned Expected response code 235 but got code "535", with message "535 5.7.3 Authentication unsuccessful [ZR0P278CA0107.CHEP278.PROD.OUTLOOK.COM] ".
      • 这是 .env,MAIL_MAILER=smtp MAIL_HOST=smtp-mail.outlook.com MAIL_PORT=587 MAIL_USERNAME=support@tingsapp.com MAIL_PASSWORD=my-password-which-I-login-to-office.com MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=support@tingsapp.com MAIL_FROM_NAME="Tings App"。它使用 gmail 工作。
      猜你喜欢
      • 2017-10-12
      • 2015-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-26
      • 2018-05-16
      • 2019-10-17
      • 2015-06-30
      相关资源
      最近更新 更多