【问题标题】:Laravel 5.1 send email (Connection could not be established with host smtp.gmail.com [connection time out #110]Laravel 5.1 发送电子邮件(无法与主机 smtp.gmail.com 建立连接 [连接超时 #110]
【发布时间】:2017-01-18 06:39:10
【问题描述】:

我正在为我的项目学习 Laravel 5.1 邮件。因此,我首先尝试从本地主机上的新 Laravel 5.1 应用程序发送简单的电子邮件。

这是我的.env 配置文件

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=mygmail@gmail.com
MAIL_PASSWORD=mygmailpassword
MAIL_ENCRYPTION=tls

这是我的config/mail.php

'driver' => env('MAIL_DRIVER', 'smtp'),

'host' => env('MAIL_HOST', 'smtp.mailgun.org'),

'port' => env('MAIL_PORT', 587),

'from' => ['address' => 'sender@gmail.com', 'name' => 'Sender'],

'encryption' => env('MAIL_ENCRYPTION', 'tls'),

'username' => env('MAIL_USERNAME'),

'password' => env('MAIL_PASSWORD'),

'sendmail' => '/usr/sbin/sendmail -bs',

这是我发送电子邮件的功能

Mail::send('emails.email', ['user'=>'Sender'], function($m){

    $m->to('receiver@yahoo.com','receiver')->subject('subject');
});

这样,当我运行应用程序时,它总是返回错误

StreamBuffer.php 第 265 行中的 Swift_TransportException:

无法与主机 smtp.gmail.com 建立连接 [连接计时 #110]

我尝试过的:

  • 在 Google 帐户上启用“安全性较低的应用”
  • 两步验证(生成应用密码)并在(.env 配置上的 MAIL_PASSWORD)上使用它

但是,这一切都没有成功。我在这里做错了什么?

PS:我的操作系统是 Linux Ubuntu 14.04

【问题讨论】:

标签: laravel laravel-5.1


【解决方案1】:

你有没有尝试改变这些

MAIL_PORT=465
MAIL_ENCRYPTION=ssl

【讨论】:

    【解决方案2】:

    给您的托管支持写一张票。我也遇到了同样的问题:我的邮件在localhost成功发送,但是在hosting出现了问题。

    我已经写信给技术支持,工程师说端口 587 默认被阻止,如果我愿意,他们可以取消阻止。当端口被解除阻塞时,错误消失了。

    很简单)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-30
      • 2017-10-15
      • 2018-12-29
      • 2017-05-01
      • 2015-02-14
      • 2011-02-13
      • 2019-02-05
      • 1970-01-01
      相关资源
      最近更新 更多