Windows下配置用mail()发送邮件,以qq邮箱为例

php mail()函数在windows不能用,需要安装sendmail,假如是用的XAMPP,则已经下载好,不需要重新下载

参考资料:

qq邮箱开启smtp服务:https://jingyan.baidu.com/album/f00622283113c9fbd3f0c8d4.html?picindex=1

QQ邮箱的POP3与SMTP服务器是什么: http://service.mail.qq.com/cgi-bin/help?subtype=1&no=167&id=28ECS

解决windows系统下php.ini邮件配置正确不发送邮件的问题:https://help.aliyun.com/knowledge_detail/40745.html?spm=5176.11065259.1996646101.searchclickresult.4b74ac30dME0B4

解决方案


1.从http://glob.com.au/sendmail/下载sendmail.zip

2.解压到E:下,例如:【E:\sendmail】最好短路径,长路径名有可能产生问题。 

3.修改【php.ini】如下 (测试时用的是qq的邮箱)

[mail function]

; For Win32 only.

SMTP = smtp.qq.com

smtp_port = 465

sendmail_from = [email protected]

sendmail_path = “E:\sendmail\sendmail.exe -t”

*重启apache服务

4.修改【sendmail.ini】如下。

[sendmail]

smtp_server= smtp.qq.com

smtp_port= 465

[email protected]

auth_password=password

[email protected]

*用sendmail结合其它的smtp服务器,如smtp.qq.com来实现发邮件。现在大部分邮箱都要求smtp验证,所以要在sendmail.ini中加入用户名和密码。

username是你的邮箱账号,password是授权码,需要你在qq邮箱开启smtp服务,他会给你一个授权码,(必须开启否则无效,开启方法见参考资料)


Windows下配置用mail()发送邮件,以qq邮箱为例_第1张图片

5.PHP代码

$headers = "From:[email protected]" . "\r\n" ."CC:[email protected]";

//发件人  以及 抄送

$rs=mail("[email protected]","My subject","ceshi content",$headers);

if($rs){

    echo "success";

}else{

    echo "error";

}

你可能感兴趣的:(Windows下配置用mail()发送邮件,以qq邮箱为例)