laravel自己的SMTP电子邮件配置问题
laravel框架开发的网站在用户使用电子邮件地址注册和登录时遇到电子邮件配置问题。
1. 由于我在国外,所以我使用微软电子邮件进行此开发。包括 Microsoft 电子邮件帐户、outlook、http://live.cn 和 hotmail。
2. 配置您的 Outlook 邮箱,选择弹出是并允许删除。
登录网站https://account.microsoft.com/security,点击【高级安全设置】,确认“Microsoft帐户安全码”,从邮件中获取六位验证码,然后输入在网页上确认这一点。
此安全码无需记录。
3。设置双因素身份验证
此时您需要添加双因素身份验证。
为了双重确认,我们单击此处的“下一步”。可能有两种情况:
- 在哪种移动设备上使用?选择“其他”,点击“下一步”
- 如果提示“在手机上获取 Microsoft autherticator 应用程序”,点击“取消”。
无论以上哪种情况,最后都会看到“设置进入您的智能手机并设置应用密码”页面,点击“下一步”,点击“完成”,两步认证完成。
3。进入宝塔面板,在larave l框架开发的网站上找到.env
配置。 MAIL_USERNAME=登录账号
MAIL_PASSWORD=登录密码(这个很重要,需要输入上面的应用密码或授权码)
MAIL_ENCRYPTION=TLSROMF MAIL_FROM_NAME=自定义
四。配置larave l config/mail.php文件 [1]
'mailers' => [
'smtp' => [
'transport' => 'smtp',
'host' => env('MAIL_HOST', 'smtp.office365.com'),
'port' => env('MAIL_PORT', 587),
'encryption' => env('MAIL_ENCRYPTION', 'tls'),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'timeout' => null,
'auth_mode' => null,
],
'ses' => [
'transport' => 'ses',
],
'mailgun' => [
'transport' => 'mailgun',
],
'postmark' => [
'transport' => 'postmark',
],
'sendmail' => [
'transport' => 'sendmail',
'path' => '/usr/sbin/sendmail -bs',
],
'log' => [
'transport' => 'log',
'channel' => env('MAIL_LOG_CHANNEL'),
],
'array' => [
'transport' => 'array',
],
],
'driver' => env('MAIL_DRIVER', 'smtp'), //确保这里使用的是smtp驱动 'from' = > [ 'address ' => env('MAIL_FROM_ADDRESS', '123456@outlook.com'), //源地址 'name' => env('MAIL_FROM_NAME', custom ''), //源人名], driver:used配置用于发送电子邮件的默认驱动程序。 Laravel 支持多种电子邮件驱动程序方法,包括 smtp、Mailgun、Maildrill、Amazon SES、mail 和 sendmail。 Mailgun 和 Amazon SES 都是付费的。 Maildrill 目前不支持中国用户。这三个是第三方电子邮件服务。邮件驱动程序使用PHP提供的邮件功能发送邮件,sendmail驱动程序通过Sendmail/Postfix(Linux)的命令发送邮件,smtp驱动程序通过支持ESMTP的SMTP发送邮件。从目前的情况来看,最明智的选择就是使用smtp。邮件不安全。 Sendmail 必须安装并配置Sendmail/Postfix。其他的要么付费,要么无法使用。
主机:邮箱所在主机。使用 Outlook 邮箱。主机为:smtp.office365.com
端口:用于配置邮箱发送服务端口号。如果SMTP设置为使用SSL加密,则值为465。
from:配置项包括地址和名称。前者代表您自己的电子邮件地址,后者代表您的电子邮件用户名(这里的电子邮件地址是用于发送电子邮件的电子邮件地址)。
加密:指定加密类型。可以将其设置为 null 以不使用任何加密,也可以将其设置为 tls 或 ssl。 (hotmali,outlook邮箱选择tls) MAIL_ENCRYPTION=TLS
username:指定邮箱账号,如123456789@outlook.com
password指定上述邮箱登录对应的登录密码。如果您有163邮箱,则在开通POP3|SMTP服务时必须输入授权码。
sendmail:驱动设置为sendmail时使用,用于指定sendmail命令路径。
pretend:用于配置邮件发送是否记录在日志中。默认值为 false,并且将在不记录的情况下发送电子邮件。如果为 true,则仅记录日志文件,但不会发送电子邮件。这个配置在调试本地开发时非常有用。 [2]
5.通过Mail类的send()方法或者IlluminateContractsMailMailer类的send()方法发送邮件
这里不用担心,会由Mlail类发送默认情况下。
6。 【邮件测试】点击“发送邮件”测试是否可以收到。
如果显示发送成功,请前往前台查询表页面测试。如果您能收到邮件,则说明以上设置成功。
信息:
Hotmail:
POP3 服务器地址:http://pop3.live.com (tls: 995)
TPs 服务器:http://e. (tls:25/587)
Gmail
POP3:http://pop.gmail.com(SSL/TLS:995)
SMTP:http://smtp.gmail.com(SSL/TLS) ) :465/587)
IMAP: http://imap.gmail.com (SSL/TLS:993)
NetEase@http://yeah.net 电子邮件:
POP3: http:// pop .yeah.net;
SMTP: http://smtp.yeah.net
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。