2012-08-09 91 views
0

我很想把它弄明白。主要問題是,當我使用一個循環與PHP郵件發送電子郵件給我們的用戶,它只會得到一些,我相信這是一個DNS問題。主機名-f主機名:名稱或服務未知

這裏是郵件代碼

function massEmail($from,$subject,$to,$body) { 
    require_once('packages/class.phpmailer.php'); 
    $success = 0; 
    foreach($to as $person) { 
     usleep(2000); 
     $mail = new PHPMailer(); 
     $mail->From = $from; 
     $mail->IsHTML(true); 
     $mail->FromName = "cmiVFX"; 
     $mail->Subject = $subject; 
     $mail->Body = $body; 
     $mail->AddAddress($person); 
     $ret = $mail->Send(); 
     if($ret) { 
      $success++; 
     } 
    } 
    var_dump($success); 
} 

當運行主機我得到這個

server.cmivfx.com 

當運行主機名-f或重新啓動sendmail的時候--fqdn我得到

hostname: Name or service not known 

我得到

hostname: Name or service not known 

這裏是我的hosts文件

127.0.0.1 localhost.localdomain localhost 
127.0.1.1 server.cmivfx.com cmivfx.com 
69.162.76.226 server.cmivfx.com cmivfx.com 

我的主機文件是

server.cmivfx.com 

我的郵件服務器指向Google Apps, 所以挖cmivfx.com任何讓我

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11895 
;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 0 

;; QUESTION SECTION: 
;cmivfx.com.   IN ANY 

;; ANSWER SECTION: 
cmivfx.com.  1553 IN SOA ns1.limestonenetworks.com. noc.limestonenetworks.com. 1344528611 16384 2048 1048576 2560 
cmivfx.com.  1553 IN NS ns1.limestonenetworks.com. 
cmivfx.com.  1553 IN NS ns2.limestonenetworks.com. 
cmivfx.com.  1544 IN MX 1 ASPMX.L.GOOGLE.com. 
cmivfx.com.  1544 IN MX 5 ALT1.ASPMX.L.GOOGLE.com. 
cmivfx.com.  1544 IN MX 10 ASPMX2.GOOGLEMAIL.com. 
cmivfx.com.  1544 IN MX 10 ASPMX3.GOOGLEMAIL.com. 
cmivfx.com.  1544 IN MX 5 ALT2.ASPMX.L.GOOGLE.com. 
cmivfx.com.  1519 IN A 69.162.76.226 

;; Query time: 0 msec 
;; SERVER: 208.115.254.242#53(208.115.254.242) 
;; WHEN: Thu Aug 9 11:48:14 2012 
;; MSG SIZE rcvd: 268 

最後,當我運行我的Gmail的郵件PHP代碼很好。與其他一些我得到

Could not instantiate mail function 

希望我已經提供了足夠的信息,知道有關sendmail的人可以幫助我。非常感謝!

+2

PHP的mail()是不可靠的,並且有用的診斷方式提供了零。使用swiftmailer或phpmailer - 更好的錯誤信息。並檢查你的郵件服務器的日誌,看看在PHP交付後郵件會發生什麼(記住,PHP實際上並沒有提供郵件,它只是將信封放入郵箱)。 – 2012-08-09 16:55:23

+0

嗯,我正在使用phpmailer,這是我提供的第一個代碼塊。你有沒有看到我不在的地方? – 2012-08-09 17:24:31

+0

對不起,我的壞...今天工作太多糖了。 – 2012-08-09 17:45:59

回答

2

有/ etc/hosts文件和/ etc /主機名之間的衝突: 變化的/ etc /主機名: cmivfx.com

如果您需要保持主機名server.cmivfx.com特殊原因,你可以使用 /etc/hostname + /etc/resolv.conf let 'hostname -f'得到正確的FQDN。

您可以在這裏得到一些背景資料:configure FQDN on multiple domains supports mail server

相關問題