今天群里小伙伴@佰宝小筑安装postfix时遇到的问题, 记录一下. 如果你的情况相似, 可以对照解决.
他的网站域名是xxx.com, 使用Google的企业邮箱, Contact Form 7 内设置的发件邮箱是1@xxx.com, 装完测试的时候, QQ, Gmail都能收到邮件, 但是自己的企业邮箱如1@xxx.com却收不到. 查看域名的mx解析, 是正常的, 同时也做了spf记录.
怎么办咧? 第一步当然是看日志, 像mysql, php, 网站访问都会有日志产生, 程序运行时的详细信息都会被记录, 出现问题时可以通过查看日志进行溯源排查, 从而解决问题.
Postfix的日志文件位于/var/log/maillog
, 有详细的收发记录:
发送至QQ邮箱正常, 通过relay:mx3.qq.com中转, 状态码显示status=sent (250 Ok: queued as )
发送至自己域名开头的邮箱失败, 显示错误status=bounced (unknown user).
从图上可以看出, postfix发邮件走的是本地中转 (relay=local), 正常relay应该是google的服务器才对. Google一番, 发现原来postfix走local转发的话会从本机用户中查找是否有对应的用户, 找不到就会出错.
问题解决
修改postfix配置文件main.cf
vim /etc/postfix/main.cf
将这一行mydestination后面的配置删掉.
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
改成
mydestination =
重启Postfix
service postfix restart
完成后再次测试, 发送成功, 问题解决.
[图片上传失败...(image-29e5c6-1514647783120)]