Mail.php
return [
'driver' =>'smtp',
'host' => 'smtp.gmail.com',
//'port' => 587,
'port' =>465,
//'encryption' =>'tls',
'encryption' =>'ssl',
'username' => 'xxxxxxxx@gmail.com',
'password' => 'xxxxxxx',
// 'sendmail' => '/usr/sbin/sendmail -bs',
'sendmail' => '/usr/sbin/sendmail -t',
'markdown' => [
'theme' => 'default',
'paths' => [
resource_path('views/vendor/mail'),
],
],
];
控制器
$data = []; // Empty array
Mail::send('email.credentials', $data, function($message)
{
$message->to('xxxxxx@gmail.com', 'Jon Doe')->subject('Welcome!');
});
误差
无法使用主机Swift_TransportException建立smtp.gmail.com连接[连接尝试失败是因为连接方在一段时间后没有正确响应,或者已建立连接失败是因为连接主机未能响应。
我试过..。
"guzzlehttp/guzzle": "~5.3|~6.0"
中添加composer.json请帮帮忙。
谢谢。
发布于 2019-02-21 01:24:10
1.需要照明/邮件
确保使用与基础框架相同的版本(即,如果您使用Lumenv.5.3,请使用composer require illuminate/mail "5.3.*"
)。
作曲家需要照明/邮寄5.5.*
2.设置Lumen bootstrap/app.php
首先,打开您的bootstrap.php
并取消注释以下行:
$app->withFacades();
$app->register(App\Providers\AppServiceProvider::class);
另外,在未注释的最后一行下面添加以下一行:
$app->configure('services');
这将允许您定义一个“服务”配置文件并设置您的邮件服务。现在我知道通常配置是在.env文件中使用Lumen完成的,我们很快就会使用它,但是首先我们需要编写一个小的配置文件来映射到.env
文件。
3.创建配置文件
在安装的根级创建一个名为config的新文件夹(如果它还不存在)。在config文件夹中,创建两个新文件,一个名为services.php,另一个名为**mail.php**.
。
在services.php
文件中粘贴以下内容:
<?php
return [
'mailgun' => [
'domain' => env('MAILGUN_DOMAIN'),
'secret' => env('MAILGUN_SECRET'),
],
];
最后,将以下内容添加到.env文件中:
MAIL_DRIVER=mailgun
MAILGUN_DOMAIN=<your-mailgun-domain>
MAILGUN_SECRET=<your-mailgun-api-key>
确保您用实际的键和域替换了那些鬼鬼祟祟的占位符。如果您不使用Mailgun,则可以始终使用附带的其他邮件提供商mail;如果您计划使用不同的提供程序,请查看文档,它们在此时都很容易设置。
4.发送电子邮件!
若要发送电子邮件,请在类中使用以下内容之一(取决于您的喜好):
use Illuminate\Support\Facades\Mail;
$data = []; // Empty array
Mail::send('email.credentials', $data, function($message)
{
$message->to('xxxxxx@gmail.com', 'Jon Doe')->subject('Welcome!');
});
最后,不要忘记阅读Laravel文档,以获得有关如何使用这个伟大库的更多信息。
https://stackoverflow.com/questions/54800445
复制