本篇文章紧接上一篇:YII2框架便捷快速的实现用户后台登录管理
YII2为我们提供了便捷的通过邮箱修改密码的模块
存在于YII2 Advanced高级模板中的fronted模板中,我们配置好本地服务器进入login页面,点击reset it 可以进行密码重置
但在没有配置之前,页面只会提示发送邮件成功而并不会真正的发送邮件。
如何配置好参数,真正的发送邮件
1首先要确保你的数据库里面有user这张表并且 邮箱为你要接收服务器发送邮箱的账号
2先配置common 文件夹下的main-local
'useFileTransport'=>false,
'transport'=> [
'class'=>'Swift_SmtpTransport',
'host'=>'smtp.qq.com',//每种邮箱的host配置不一样 用的qq邮箱
'username'=>'760263213@qq.com',
'password'=>'1234567812345678',// 十六位授权码,
'port'=>'465',
'encryption'=>'ssl',
],
'messageConfig'=>[
'charset'=>'UTF-8',
'from'=>['760263213@qq.com'=>'adminEmail']
],
注意啦授权码要自已从邮箱里面去查哦,1234567812345678 是我胡乱写的,怎么查看自己的授权码:点这里
3配置common下面的params
return[
'adminEmail'=>'760263213@qq.com',
'supportEmail'=>'760263213@qq.com',
'user.passwordResetTokenExpire'=>3600,
];
4配置frontend下面的params
return[
'adminEmail'=>'760263213@qq.com',
];
one more thing
本以为配置好这些就够了,没想到自己还是太天真了。发现ssl 识别不了,哎,这就很皮。
1找到你的php.ini文件把 extension=php_openssl.dll前面的注释去掉哦
2到php文件夹里面,分别搜索 libeay32.dll 和 ssleay32.dll ,把它们复制到 c:/windows/system32 下面
3重启Apache服务器
这样我们再次进入重置密码的页面就可以真正发送了
点击链接就可以啦。 注意哦,咱测试的都是本地的,链接也只有同一台电脑才可以打开。
网友评论