我試圖使用PHPMailer的受管服務器上(我只有通過的cPanel訪問),和我得到這個錯誤:的PHPMailer:SMTP錯誤:EHLO命令失敗
SERVER -> CLIENT:
CLIENT -> SERVER: EHLO stefanomenci.com
SERVER -> CLIENT: HTTP/1.1 301 Moved
[...]
SMTP ERROR: EHLO command failed: HTTP/1.1 301 Moved
這是腳本:
require ("/path/to/class.phpmailer.php");
$mail = new PHPMailer();
$mail->SMTPDebug = 2;
$mail->IsSMTP();
$mail->Host = "mydomain.com";
$mail->Port = 2096;
$mail->SMTPAuth = true;
$mail->Username = "[email protected]";
$mail->Password = "****";
$mail->From = "[email protected]";
$mail->FromName = "Name";
$mail->AddAddress("[email protected]");
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = "Subject";
$mail->Body = "y<b>a</b>y";
$mail->AltBody = "yay";
$mail->Send();
如果端口錯誤,它會立即失敗,並顯示「無法連接到服務器」。
如果端口丟失,它會顯示「請在您的郵件客戶端打開SMTP身份驗證,或者在發送消息之前登錄到服務器。」
如果端口正確,則等待10秒鐘並顯示上面顯示的錯誤,而不管用戶名和密碼是否正確。
刪除$mail->IsSMTP()
的作品,但往往電子郵件直接進入垃圾郵件文件夾。
我發現很多關於PhpMailer類似問題的文章,但他們通常使用Google而不是mydomain.com,他們從來沒有這個錯誤信息。
提到你的smtp主機,這是類似mail.mydomain.com而不是主機上的mydomain.com –
使用主機提供商或目標SMTP服務器在文檔中任意位置指定的端口2096? –
有或沒有'mail.'返回相同的錯誤。 'SMTP錯誤:無法連接到服務器:php_network_getaddresses:getaddrinfo失敗:名稱或服務未知(0) SMTP connect()failed.' – stenci