Lravel邮件未发送 - 无法与主机smtp.gmail.com建立连接[连接超时#110]

时间:2015-02-05 14:41:39

标签: php email laravel-4 gmail

我刚开发了一个带邮件系统的laravel Web应用程序。 我得到了像

这样的错误
Connection could not be established with host smtp.gmail.com [Connection timed out #110] 

控制器

Mail::send('timesheet/emailtemplate',array('data'=>$query),function($message) 
    {
$message->to('example@gmail.com')->cc('expalecc@gmail.com')->subject('Work Report on - ');
    });

电子邮件模板文件:emailtemplate.blade.php

<h2>hai</h2>

mail.php(config)

'driver' => 'smtp',
'host' => 'smtp.gmail.com',
'port' => 587,
'from' => array('address' => null, 'name' => null),
'encryption' => 'ssl',
'username' => 'myemail@example.com',
'password' => 'mypassword',
'sendmail' => '/usr/sbin/sendmail -bs',
'pretend' => false,

1 个答案:

答案 0 :(得分:0)

使用 Mandrill驱动程序而不是使用smtp,它比使用smtp服务器更简单,更快捷。默认情况下,laravel附带Mandrill Driver。 mandrill需要Guzzle 4 HTTP库..用于将其添加到项目中

"guzzlehttp/guzzle": "~4.0"

composer.json 文件(在项目根目录中)

enter image description here

app / config / mail.php

更改此行

'driver' => 'mandrill',

转到https://mandrillapp.com/settings
并注册并生成api密钥

创建app / config / services.php配置文件(如果项目尚不存在)并添加以下配置并生成api密钥

return array(

'mailgun' => array(
    'domain' => '',
    'secret' => '',
),

'mandrill' => array(
    'secret' => 'enter your mandrill api key here',
),

'stripe' => array(
    'model'  => 'User',
    'secret' => '',
),

);

检查一下这将是完整的帮助 Youtube video for setting up Mandrill for laravel