完成sendmail新手这里…我一直在试图让邮件工作在PHP中,我已经根源导致sendmail的关于“名称服务器超时”的抱怨:
>sendmail -t -v >From: [email protected] >To: [email protected] >. gmail.com: Name server timeout [email protected]... Transient parse error -- message queued for future delivery [email protected]... queued
所以这听起来像一个DNS问题? 但我可以做一个“挖mx gmail.com”,它会成功地查询。
这就是让我困惑的地方…我可以让sendmail以另外两种方式工作。 第一种方式是通过telnet:
>telnet 127.0.0.1 25 >Helo me >Mail from: [email protected] >Rcpt to: [email protected] >. message sent
第二种方法是明确附加sendmail.cf,但这很奇怪,因为它与我用来configurationsendmail的文件完全相同:
>sendmail -t -v -C/etc/mail/sendmail.cf
但是这些解决scheme都不能解决我的PHP邮件问题……我对于发生了什么事情一无所知……感谢任何帮助。
男人,三天后,我终于解决了它…我不知道这会适用于任何人,因为这是一个angular落的情况下。
所以我正在Android的Ubuntu的chrooted环境中工作。 当你访问Ubuntu中的任何types的套接字(sendmail,mysql等)时,你的进程需要在组3003(AID_INET)或root中运行,这是因为android强制这个(CONFIG_ANDROID_PARANOID_NETWORK)。 之所以使用telnet的原因是因为我是根源,为什么它通过追加-C(-C强制sendmail运行在根下…)
当我注意到我无法parsing任何主机名,除非我是根(ping,wget,dig,),这是一个权限问题,我的灯泡开始closures。
SOOOO解决scheme是创build一个名为aid_inet的组并给它3003,然后添加任何需要套接字的组
groupadd -g 3003 aid_inet usermod -G aid_inet user
这是我最深切的愿望之一,就是这个信息将会挽救一些可怜的失去的灵魂,就像我一样把头撞到桌子上。