欢迎发布文章/投稿,输入文章内容
由于项目需要,必须支持php使用原生mail函数实现邮件发送;
所以暂时抛弃使用邮件类,linuxmail等解决方案
在网上捣鼓半天sendmail,网上的资料翻了遍,都没找到很好的解决方法
由于服务器封禁了25端口,必须要通过465发送邮件
最后终于找到了使用postfix的可行方法,这里记录一下问题,方便以后备查,也方便遇到同样问题的小伙伴查阅
3.添加发邮件用的服务器地址以及发邮件的账户密码
vi /etc/postfix/sasl_passwd
[smtp.exmail.qq.com] 123@qq.com:密码 //这里使用的是qq的邮箱服务器,需要开启qq邮箱的smtp服务,并获取验证码
4.保存文件后执行
postmap /etc/postfix/sasl_passwd
postfix reload
5.编辑main.cf文件
vi /etc/postfix/main.cf
relayhost = [smtp.exmail.qq.com] //这个地方要和前面一样
#添加以下项,先搜索项名称,如果存在则修改后面的值即可
smtpd_sasl_auth_enable = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_wrappermode = yes
smtp_tls_security_level = encrypt
6.修改php.ini
sendmail_path = /usr/sbin/sendmail.postfix -f 123@qq.com -t -i
重点是-f 邮箱名,否则会报501,来源必须和作者一致
7.重启fpm,postfix服务
service php-fpm restart
service postfix restart
8.新建php文件进行测试
mail(“@qq.com”, “Subject for php”, “test!!!!”); //mail命令
赞赏微信赞赏
支付宝赞赏
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 关于编程知识分享网(www.ittce.com)