热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

解决bugzilla在Linux系统不能发送邮件的问题

重装了一次bugzilla,装完之后发现无法发送邮件,发现网上也有人遇到类似的情况,现做一个总结。现象一:Feb104:02:03localhostsendmail[9764]:g0VK23Ua009764:toroot,ctladdrroot(0/0),delay00:00:00,xdelay00:00:00,mai
重装了一次bugzilla,装完之后发现无法发送邮件,发现网上也有人遇到类似的情况,现做一个总结。

现象一:
Feb  1 04:02:03 localhost sendmail[9764]: g0VK23Ua009764: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay
, pri=31246, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]
检查sendmail是否已经启动,方法一:查看端口25是否已经在监听,netstat -an 。方法二:telnet localhost 25 。结果发现没有启动,用 service sendmail start 启动sendmail。

sendmail启动之后,出现了现象二:
Apr  9 10:33:34 localhost sendmail[2597]: g392XYEt002597: <***@***.com>... User unknown
Apr  9 10:33:34 localhost sendmail[2596]: g392XYkR002596: to=***@***.com, ctladdr=bugzilla (503/504), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30483, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown

原因原来是在 /etc/mail/local-host-names 里添加了一行类似:126.com,这个文件的作用是,把里面所列出的域名当作是本地域名来解析,不会往外发邮件,所以没有这个用户名。去掉这行之后出现了现象三:
Apr  9 10:52:29 localhost sendmail[2763]: g392qTeT002761: g392qTeT002763: DSN: Service unavailable

ping了一下邮箱服务器的域名,发现ping不同,然后就添加了一个DNS (vi /etc/resolv.conf),重新启动sendmail之后(service sendmail restart),发送邮件成功。
但由于我的机器不是公网ip,126邮箱有限制,无法网126邮箱发送邮件,163邮箱和公司的内部邮箱没有问题。

推荐阅读
author-avatar
x洗不掉的思念
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有