【问题标题】:Send email via SMTP of gmail through proxy localhost通过代理 localhost 通过 gmail 的 SMTP 发送电子邮件
【发布时间】:2018-01-09 01:01:49
【问题描述】:

我正在构建一个具有简单电子邮件发送功能的 laravel 网站。我无法让我的电子邮件发送工作。我之前(PHP / Laravel)一直在发送大量电子邮件,但这次,我对我目前的设置感到非常困惑。我已经使用过 Mailtrap、SMTP gmail、mailgun、XAMPP 的 sendmail、laragon 的 sendmail,但它们都没有工作。我只是想在我的本地主机上向我的测试 gmail 帐户发送邮件,但错误一直显示

SMTP 错误:无法连接到服务器:连接尝试失败 因为连接方在一段时间后没有正确响应 时间,或建立连接失败,因为连接的主机失败 回应。(10060)

由于我没有直接连接到互联网,我怀疑我的代理服务器。我的机器上是否需要设置某种配置?已经尝试了一些教程,但没有任何运气。

【问题讨论】:

    标签: php laravel email proxy smtp


    【解决方案1】:

    您可以使用 gmail 帐户从本地主机发送电子邮件 但是你需要先在你的Google Account settings创建一个应用密码

    1. 选择Sign-in & Security
    2. 如果您已登录,请向下滚动并找到登录 Google 部分,然后点击右侧框中的应用密码
    3. 使用选择要为其生成应用密码的应用和设备表单生成应用密码。选择应用程序,选择设备,然后单击生成。您应该会看到生成的密码。
    4. 将您的 .env 文件配置为如下所示:

      MAIL_DRIVER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=587 MAIL_USERNAME=youremailusername MAIL_PASSWORD=generated-password MAIL_ENCRYPTION=tls

    运行php artisan config:clear 如果您的邮件发送代码正常并且您已连接到互联网,您现在应该能够从 localhost 发送电子邮件。

    【讨论】:

    • 已经尝试过了,但我的代理似乎影响了我的电子邮件发送功能
    • 你确定你已经运行了php artisan config:clear 命令。因为配置可能已经被缓存了。
    • 是的。我发现一篇文章说我的代理可能阻止了所有 smtp,这就是我无法发送外部邮件的原因。
    【解决方案2】:

    我发现我们的代理服务器正在阻止所有 SMTP。我们不能使用任何外部 smtp。我们需要联系我们的管理员以允许使用 Gmail SMTP。

    谢谢你!

    【讨论】:

      猜你喜欢
      • 2011-02-08
      • 2021-11-16
      • 2017-05-12
      • 2020-02-21
      • 1970-01-01
      • 2014-01-04
      • 2016-01-16
      • 2015-10-09
      • 2011-08-11
      相关资源
      最近更新 更多