laravel 5.5在Windows上的网站本地服务器上发送邮件(xampp) 这是我的代码发送
我的错误
无法与主机smtp.gmail.com建立连接[连接尝试失败,因为连接方在一段时间后没有正确响应,或者建立的连接失败,因为连接的主机无法响应。 #10060]
帮助我检查这个错误例外
MailController.php文件
public function index()
{
Mail::send('mail.index', ['key' => 'value'], function($message)
{
$message->to('akambajalan0@gmail.com', 'Hello Akam ')->subject('Welcome!');
});
return view('mail.index');
}
.env文件
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=578
MAIL_USERNAME=*myemail*@gmail.com
MAIL_PASSWORD=*mypassword*
MAIL_ENCRYPTION=tls
答案 0 :(得分:0)
这是关于发送电子邮件的全部内容 我认为你的问题在于蒸汽ssl
'driver' => env('MAIL_DRIVER', 'smtp'),
'stream' => [
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true,
],
],
如果您想发送带有令牌的邮件,您可以使用
Route::post('/PasswordReset', 'ResetPasswordController@GetToken');
然后通过邮件发送令牌,你可以保存令牌甚至可以保存它你可以使用用户名有一个名为bcrypt()的函数;你可以用它来浏览他的用户名,它会给你很长的代币,但我不喜欢那个因为代币不会改变
我更喜欢将新密码发送给他并让他登录然后更改密码,您可以使用str_random(8);
它将生成8个带字母的随机数
尝试帮助您首先必须将邮件配置到Config / mail.php并在驱动程序后添加
'driver' => env('MAIL_DRIVER', 'smtp'),
'stream' => [
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true,
],
],
第二个转到你.env文件将此更改为您的主机详细信息列表尝试使用gmail one
MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=yourgmailMail@gmail.com
MAIL_PASSWORD=yourpassword
MAIL_ENCRYPTION=tls
第三个转到你的Controller,你将在列表中发送邮件功能假设它的名字是SendMassEmailController这是整个控制器
最后一件事是路线转到web.php
Route::post('/SendMassEmail','SendMassEmailController@SendMassEmail');
终于好运,玩得开心