今天收到客户部的邮件说公司的客户网站无法发送注册邮件,我上去查了一下网通的ldns对企业邮箱的smtp域名解析有问题,于是我把域名解析加到hosts,发现邮件可以正常发送,去掉解析记录则不可以。
我自己安装了一个bind作为ldns,把服务器的ldns改到它的ip,dig没有问题,但是php程序还是无法发送
我写了一个测试程序:

点击(此处)折叠或打开

  1. <?php
  2.         require_once ('lib/mail/class.phpmailer.php');
  3.         $mail = new PHPMailer();
  4.   $mail->IsSMTP(); // telling the class to use SMTP
  5.   $mail->Host="smtp.exmail.xx.com";
  6. # $dnsIps=dns_get_record($mail->Host,DNS_A);
  7. # $mail->Host =$dnsIps[0]["ip"]; // SMTP server
  8.   echo $mail->Host;
若是只使用域名发现出现下面的错误

点击(此处)折叠或打开

  1. SMTP -> ERROR: Failed to connect to server: (4)
  2. SMTP Error: Could not connect to SMTP host. 0
若是使用dns_get_record则能够获取到Ip,这时就正常了
09-15 11:21
查看更多