无法与主机 smtp.gmail.com 建立连接 [操作超时 #60]

Connection could not be established with host smtp.gmail.com [Operation timed out #60]

我无法在本地环境中发送任何电子邮件。

我不断收到:

_

.env 文件.

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=my-email@gmail.com
MAIL_PASSWORD=*****

注意 : 令人惊讶的是 - 我在我的生产服务器中有相同的设置,并且它运行完美。

有什么提示/建议吗?

Laravel 还包括 Mailgun 和 Mandrill HTTP API 的驱动程序。这些 API 通常比 SMTP 服务器更简单、更快速。这两个驱动程序都需要将 Guzzle 5 HTTP 库安装到您的应用程序中。您可以通过将以下行添加到 composer.json 文件来将 Guzzle 5 添加到您的项目中:

"guzzlehttp/guzzle": "~5.0"

composer update

Mailgun 驱动程序

要使用 Mailgun 驱动程序,请在 config/mail.php 配置文件中将驱动程序选项设置为 mailgun。接下来,创建一个 config/services.php 配置文件(如果您的项目尚不存在)。验证它是否包含以下选项:

'mailgun' => [
    'domain' => 'your-mailgun-domain',
    'secret' => 'your-mailgun-key',
],

山魈驱动器

要使用 Mandrill 驱动程序,请在 config/mail.php 配置文件中将驱动程序选项设置为 mandrill。接下来,创建一个 config/services.php 配置文件(如果您的项目尚不存在)。验证它是否包含以下选项:

'mandrill' => [
    'secret' => 'your-mandrill-key',
],

基本用法

The Mail::send method may be used to send an e-mail message:

Mail::send('emails.welcome', ['key' => 'value'], function($message)
{
    $message->to('foo@example.com', 'John Smith')->subject('Welcome!');
});

http://laravel.com/docs/5.0/mail

将我的驱动程序更新为

MAIL_DRIVER=sendmail

第一次尝试就成功了。

最终 .env 文件应如下所示

MAIL_DRIVER=sendmail
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=my-email@gmail.com
MAIL_PASSWORD=*****

对我来说,以下内容适用于 GMAIL:

'encryption' => 'ssl',

.env

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=465
MAIL_USERNAME=xxx@gmail.com
MAIL_PASSWORD=xxx

1:要么您必须允许安全性较低的应用程序,要么通过在您的 gmail 帐户上启用两步验证来使用应用程序密码。 2: 在你的机器上禁用任何杀毒软件。

更改 .env 文件中的设置并在设置 smtp 后保留邮件服务器的凭据

MAIL_DRIVER=smtp MAIL_HOST=smtp.gmail.com MAIL_PORT=465 MAIL_USERNAME=xxx MAIL_PASSWORD=xxx