2012-06-17 20 views
1

的PHPMailer從http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php5_6/PHPMailer%20v5.1/PHPMailer的SMTP在一個安裝工作​​,而不是另一個(SMTP 535個錯誤的認證數據)

在我的「下線」 WAMP安裝(本地主機),通過Gmail使用的PHPMailer我的PHP文件完美的作品(後我記得打開php_openssl)。這表明我的PHP代碼和Gmail設置是正確的。

但是在我的「在線」的託管服務提供商,我得到「錯誤:密碼不能從服務器接受:535不正確的認證數據」。

535提示密碼不正確,但它是一個已經上傳的文件相同。因此,我認爲這是一個服務器配置問題,但不知道從哪裏開始。我已經比較了phpinfo(),並且openSSL在兩者上都被啓用 - 任何建議?

+0

好的 - 我發現它有時可以工作,有時候不會 - 沒有代碼更改,只是間歇性的。我絕對不會觸及Gmail的500個配額,並且返回的錯誤是關於密碼的問題,該密碼未被更改。 – Chris

+0

你能說哪一個是你的託管服務提供商嗎?我沒有使用hostgator這樣的問題(放棄它可能是服務器端錯誤) –

回答

0

只是一個想法,但也許你有你的密碼的特殊字符,這就是爲什麼它不匹配?此外,你可能想嘗試使用當地的php.ini以確保它是沒有問題的,只是當然

0

的第二好像是你描述的環境問題。可能您的「在線」(或生產)託管比您的本地主機環境更安全。某種防火牆可能阻止您連接到出站套接字/端口。與出站SMTP端口相當平常的實踐。

若要檢查這是否是您的問題,請測試哪些端口可用。你有一堆方法來做到這一點。

的Netstat

netstat -l -t -p 

$p = fsockopen('127.0.0.1', <port number>, $errno, $errstr, 5); 
if (!$p) 
    // port is closed or blocked 
else 
    // port is open and available 
    fclose($p); 

的Python

#!/usr/bin/env python 
from socket import * 

if __name__ == '__main__': 
    target = raw_input('Enter host to scan: ') 
    targetIP = gethostbyname(target) 
    print 'Scanning on host ', targetIP 

    for i in range(20, 1025): 
     s = socket(AF_INET, SOCK_STREAM) 

     result = s.connect_ex((targetIP, i)) 

     if(result == 0) : 
      print 'Port %d: OPEN' % (i,) 
     s.close() 
0

聽起來像是你的遠程主機不使用反向DNS配置IP地址,或者IP地址可以基於從SenderBase /等的值進行速率限制。

問題的間歇顯示器會排除一個問題像路由或物理憑證或防火牆。這將使問題更加的,速率限制,服務質量等上面這是不工作的,看它是否有一個差評主機

檢查SenderBase的手中。我敢打賭,正在工作的主持人得分很高,或者根本沒有列出。