2017-01-11 18 views
2

私はPhpmailerを使ってメールを送信しています。当初は、ユーザー名とパスワードでSMTPを使用しているときにうまくいきました。 SMTP認証なしで試した場合、接続タイムアウトエラーが返されました。ここに私のコードはPhpmailerはSMTP認証なしでメールを送信します

<?php 
require 'PHPMailerAutoload.php'; 

$mail = new PHPMailer; 
$mail->isSMTP(); 
$mail->SMTPDebug = 2; 
$mail->Debugoutput = 'html'; 
$mail->Host = "relay-hosting.secureserver.net"; 
$mail->Port = 25; 
$mail->SMTPAuth = false; 
$mail->SMTPSecure = false; 
$mail->setFrom('[email protected]', 'First Last'); 
$mail->addAddress("[email protected]", "Recepient Name"); 
$mail->addReplyTo("[email protected]", "Reply"); 
$mail->isHTML(true); 

$mail->Subject = "Subject Text"; 
$mail->Body = "<i>Mail body in HTML</i>"; 
$mail->AltBody = "This is the plain text version of the email content"; 

if(!$mail->send()) 
{ 
    echo "Mailer Error: " . $mail->ErrorInfo; 
} 
else 
{ 
    echo "Message has been sent successfully"; 
} 

?> 

で返されたエラーは

SMTP ERROR: Failed to connect to server: Connection timed out (110)

たmail.logファイルが

host smtp.secureserver.net[68.178.213.203] refused to talk to 
me: 554 p3plibsmtp03-06.prod.phx3.secureserver.net bizsmtp 
IB105. Connection refused. <ip address> is listed on the 
Exploits Block List (XBL)<http://www.spamhaus.org/query/ip/ip 
address> Please visit http://www.spamhaus.org/xbl/ for 
more information. 
+0

www.spamhaus.orgでIPアドレスを確認しましたか?エラーメッセージがブロックされたリストに表示されています。 – theduck

+0

はい私のIPはXBLに記載されています。 – balaraman

+0

これは明らかにGoDaddyにありますが、外部ブラックリストを使用して内部IPをブロックする必要があるのは非常に奇妙です。私はGoDadyにこれについて尋ね、スパムハウスに何があるのか​​を見てみることをお勧めします。 – Synchro

答えて

1

が含まれているあなたのIPがSpamhausのブロックリストの削除センターに上場されて確認してください。それは彼らの手順に従うことによって、それら非公開にその後、表示されている場合は

https://www.spamhaus.org/query/ip/your-ip-address

。それは時間がかかります。コードからSMTP構成を削除します。

<?php 
require 'PHPMailerAutoload.php'; 

$mail = new PHPMailer; 
$mail->setFrom('[email protected]', 'First Last'); 
$mail->addAddress("[email protected]", "Recepient Name"); 
$mail->addReplyTo("[email protected]", "Reply"); 
$mail->isHTML(true); 

$mail->Subject = "Subject Text"; 
$mail->Body = "<i>Mail body in HTML</i>"; 
$mail->AltBody = "This is the plain text version of the email content"; 

if(!$mail->send()) 
{ 
    echo "Mailer Error: " . $mail->ErrorInfo; 
} 
else 
{ 
    echo "Message has been sent successfully"; 
} 

?> 

私のために働きます。

関連する問題