利用postfix让PHP的mail函数生效
2015-09-13 00:00
591 查看
摘要: 有时我们需要发送邮件通知些重要的事情,PHP的mail函数系统自带,但是需要配置之后才能生效
以ubuntu为例
修改php.ini,如果是php-fpm,需要修改2个php.ini文件
安装或者重新配置postfix
一路用默认吧,第一个可以用发邮件用的域名,后面尽量为空,或者用默认值,我在这个地方卡住好久
添加发邮件用的服务器地址以及发邮件的账户密码
保存后
编辑/etc/postfix/main.cf,添加
新建php文件进行测试
看是否收到邮件,如果遇到问题,看/var/log/mail.log文件,重点是to收件人是否正确,relay是否是[smtp.123.com],from发送者是否正确
以ubuntu为例
修改php.ini,如果是php-fpm,需要修改2个php.ini文件
sendmail_from = "123@123.com" //发送邮件的邮箱,一定要和from对应 sendmail_path = "sendmail -t -i -f 123@123.com"
安装或者重新配置postfix
sudo apt-get install postfix //如果已经安装,重新配置 //sudo dpkg-reconfigure postfix
一路用默认吧,第一个可以用发邮件用的域名,后面尽量为空,或者用默认值,我在这个地方卡住好久
添加发邮件用的服务器地址以及发邮件的账户密码
sudo vim /etc/postfix/sasl_passwd [smtp.123.com] 123@123.com:密码
保存后
sudo postmap /etc/postfix/sasl_passwd sudo postfix reload
编辑/etc/postfix/main.cf,添加
relayhost = [smtp.123.com] //这个地方要和前面一样 # enable SASL authentication smtpd_sasl_auth_enable = yes smtp_sasl_auth_enable = yes # disallow methods that allow anonymous authentication. smtp_sasl_security_options = noanonymous # where to find sasl_passwd smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
新建php文件进行测试
mail('123@123.com', 'My Subject', 'fuck'); //发给自己
看是否收到邮件,如果遇到问题,看/var/log/mail.log文件,重点是to收件人是否正确,relay是否是[smtp.123.com],from发送者是否正确
相关文章推荐
- 数组函数
- php数组
- 数组的定义
- 第一篇 PHP开发环境搭建以及多站点配置(基于windows 7系统)
- 今天来做一个PHP电影小爬虫。
- 【php】php自带的那些函数和变量小结 - 1
- tp实例化一个基础功能(供应商)
- PHP验证码
- tp基本的增删改查的操作demo
- php添加mysql扩展
- 11.tftp和nfs服务器
- php环境的搭建
- php添加socket的扩展
- php基础函数和php流程控制 循环
- 配置FTP服务(一):pureftp部署和优化
- ContentProvider使用方法
- PHP7源码笔记一
- ThinkPHP之add、save无法添加、修改的解决方案
- LPC43xx OTP
- STM32 TIMER OUTPUT DIAGRAM