2012-11-22 45 views
0

我工作的一個基於Windows Server「無法在我們的服務器上找到域」,我很奇怪,爲什麼一個服務器將使用mail()函數返回時,此錯誤消息:PHP的mail()

Warning: mail() [function.mail]: SMTP server response: 554 Invalid From address: 
[email protected] Could not find domain MyDomain.com on our servers. 
The email From address must be of type [email protected] in 
\\web-123win\winpackage22\MyDomain\web\content\mail.php on line 16 

我的意思是,不是mail()函數應該發送電子郵件到我們想要的任何域名?

你能幫我理解這條信息嗎?謝謝

+2

您的錯誤消息顯示「發件人地址」,而不是「發件人地址」。也許你的電子郵件服務器軟件只允許你從預先配置的域列表發送電子郵件? – RikkusRukkus

回答

2

由於垃圾郵件佔所有電子郵件流量的99%,因此大多數郵件服務器不再接受所有郵件。相反,他們只能從這些類別接受的消息:從他們的用戶

  • 爲他們的用戶接收郵件
  • Outcoming郵件

您的郵件看起來屬於第二類,所以你必須提供一個證明的身份,以便他們知道你被允許使用他們的郵件系統。詳細信息取決於郵件提供商,但您通常需要提供用戶名和密碼。

表示mail()函數沒有實現身份驗證,因此您需要使用PHPMailer或Swift Mailer等第三方包。

+0

這很有道理,謝謝 – Vincent