本篇只是配置phppostfix 实现发送邮件功能 一.环境条件(我这里使用阿里云的linux系统) 1.yum 命令可用 2.sendmail确定卸载 3.php环境安装好的 二.步骤 为邮件服务器添加DNS解析 虽然不加DNS解析也能把邮件发出去,但会被大多数邮件服务器当作垃圾邮件。根据
一.环境条件(我这里使用阿里云的linux系统)
1.yum 命令可用
2.sendmail确定卸载
3.php环境安装好的
二.步骤
为邮件服务器添加DNS解析
虽然不加DNS解析也能把邮件发出去,但会被大多数邮件服务器当作垃圾邮件。根据我们的实际经验,需要添加三条DNS解析记录:A记录、MX记录、TXT记录。比如域名cnblogs.info,对应的DNS记录如下:
解析之后 我们开始安装
1.输入安装postfix命令
yum install postfix
2.找到/etc/postfix 修改main.cf配置
找到以下对应位置 修改相应位置
myhostname = mail.sssss.com mydomain = sssss.com myorigin = $mydomain inet_interfaces = all inet_protocols = ipv4 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain mynetworks = 127.0.0.0/8 home_mailbox = Maildir/ mail_spool_directory = /dev/mail
3.找到php.ini配置文件,一般在php安装目录下etc大概位置
修改或者添加这些地方,有些可能多余,具体也不是太清楚,照着改就行
[mail function] ; For Win32 only. SMTP = localhost smtp_port = 25 ; For Win32 only. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ;sendmail_path = /usr/sbin/sendmail -t sendmail_path = /usr/sbin/sendmail -t -i
5.接下来实现php发邮件
编写php文件
<?php $send = mail('这里写收件人例如xxx@126.com', '这里写主题', '这里写内容','这个位置可写可不写,是邮件头什么的可是自己测试'); if($send){ echo 'true'; }else{ echo 'false'; } ?>
6.在我收到邮件时候会发现 发件人为www@sssss.com
我想修改www这个参数
接下来我们来修改
第一步.编辑 vim /etc/postfix/canonical
随便找一个能写的地方 因为里面基本都是注释
找个空行写上 www arvo@sssss.com
保存退出
然后再对应目录 运行命令 postmap canonical
第二步.编辑 vim /etc/postfix/main.cf
一般情况下里面没有canonical_maps这个参数 这里我们修改或者添加 canonical_maps = hash:/etc/postfix/canonical
保存退出
postfix reload
重新加载后,在发送一次邮件,就是见证奇迹的时刻,
若还有问题 欢迎交流,——Arvo