PHPMailer トラブル事例 SMTP送信できない

目次

エラーログ取得方法

STMP情報を設定した後に下記コードを入れる。

デバックレベル:3

$mail->SMTPDebug = 3;
// ログに出力させる場合
$mail->Debugoutput = function($str, $level){
error_log(“debug level $level; message: $str”, 3, ‘error.log’);
};

PHPMailerのSMTPデバッグレベル:

  • SMTP::DEBUG_OFF (0):
    • デバッグを無効にします。
    • これはデフォルト設定であり、デバッグ情報を出力しません。
    • 本番環境では、この設定を使用してください。
  • SMTP::DEBUG_CLIENT (1):
    • クライアント(PHPMailer)からサーバーへ送信されるメッセージを出力します。
    • 送信されたコマンドやデータを確認できます。
  • SMTP::DEBUG_SERVER (2):
    • クライアントからサーバーへ送信されるメッセージと、サーバーからクライアントへ返信されるメッセージの両方を出力します。
    • SMTP通信の全体像を把握できるため、最も有用な設定です。
    • 認証の失敗やサーバー応答のエラーなどを確認するのに役立ちます。
  • SMTP::DEBUG_CONNECTION (3):
    • レベル2の情報に加えて、初期接続に関する詳細情報(TLS/SSLハンドシェイクなど)を出力します。
    • STARTTLSの失敗など、接続に関する問題を診断するのに役立ちます。
  • SMTP::DEBUG_LOWLEVEL (4):
    • レベル3の情報に加えて、非常に詳細な低レベルの情報(ソケット通信など)を出力します。
    • SMTP通信自体のデバッグではなく、低レベルのネットワーク問題を診断する場合にのみ使用してください。
    • 非常に冗長な出力になるため、通常の使用では推奨されません。

ロリポップ SMTP接続できない/送信エラー

メールサーバー情報

POP メールサーバー pop.lolipop.jp (ポート番号: 995)
IMAP メールサーバー imap.lolipop.jp (ポート番号: 993)
SMTP メールサーバー smtp.lolipop.jp (ポート番号: 465)

メールソフトで設定しても接続できないとエラーになる

ロリポップ SMTP エラーログ

debug level 2; message: SERVER -> CLIENT: 535 5.7.0 Authentication failed.:

  • SMTPサーバーが認証に失敗したことを通知しています。

debug level 1; message: SMTP ERROR: Username command failed: 535 5.7.0 Authentication failed.:

  • PHPMailerが認証失敗のエラーメッセージを表示しています。

debug level 3; message: SMTP Error: Could not authenticate.:

  • PHPMailerが認証に失敗したことを示しています。

debug level 1; message: CLIENT -> SERVER: QUIT:

  • PHPMailerがQUITコマンドを送信し、接続を終了しようとしています。

debug level 2; message: SERVER -> CLIENT::

  • サーバーがQUITコマンドに返答がありません。

debug level 1; message: SMTP ERROR: QUIT command failed::

  • PHPMailerがQUITコマンドが失敗したことを示しています。

debug level 3; message: Connection: closed:

  • SMTPサーバーとの接続が閉じられました。

debug level 3; message: SMTP Error: Could not authenticate.:

  • PHPMailerが認証に失敗したことを示しています。

ロリポップ SMTP 送信できない 主な問題点

  • 認証失敗 (535 5.7.0 Authentication failed.):
    • SMTPサーバーが提供された認証情報を拒否しています。
    • これは、ユーザー名、パスワード、または認証方式が間違っている可能性があります。
  • QUITコマンドの失敗:
    • サーバーがQUITコマンドに返答していません。

考えられる原因と対処法:

  • ユーザー名またはパスワードの誤り:
    • ユーザー名とパスワードを再確認してください。
  • 認証方式の誤り:
    • CRAM-MD5認証がサーバーでサポートされているか確認してください。
    • PLAINまたはLOGIN認証を試してみてください。
  • サーバー設定の問題:
    • SMTPサーバーの設定を確認してください。
    • ロリポップのサポートに問い合わせて、SMTP設定を確認してください。
  • ファイアウォールまたはセキュリティソフト:
    • ファイアウォールまたはセキュリティソフトがSMTP接続をブロックしていないか確認してください。
  • SSL/TLSの問題:
    • 証明書の検証で問題が発生している可能性があります。SMTPOptionsの設定を確認してください。

このログから、認証に失敗していることが明確にわかります。まずは、ユーザー名とパスワードを再確認し、認証方式を変更して試してみてください。それでも問題が解決しない場合は、ロリポップのサポートに問い合わせることをお勧めします。

  • メールソフトでもSMTPに接続できないエラーになっていて、メールアカウント3つで試しても同様。
  • webメールは使用できるため、メールアドレスやパスワードの間違いではない。

サーバー側に原因があると判断して、ロリポップは断念

ジンドゥー(Jimdo)SMTP 送信エラー

ジンドゥー(Jimdo)メールサーバー情報

プロトコルホスト名ポート番号
IMAP(受信)secure.emailsrvr.com993
POP3(受信)secure.emailsrvr.com995
SMTP(送信)secure.emailsrvr.com465,587,8025

ジンドゥー(Jimdo)SMTP 送信エラー ログ

debug level 1; message: CLIENT -> SERVER: .:

  • PHPMailerがメール本文の終了を通知しています。

debug level 2; message: SERVER -> CLIENT: 550 5.1.0 Sender is not allowed to send from gmail.com (R2):

  • SMTPサーバーが送信者のメールアドレス(xxxxxxxxxx@gmail.com)が許可されていないことを通知しています。

debug level 1; message: SMTP ERROR: DATA END command failed: 550 5.1.0 Sender is not allowed to send from gmail.com (R2):

  • PHPMailerがメール送信失敗のエラーメッセージを表示しています。

debug level 3; message: SMTP Error: data not accepted.:

  • PHPMailerがメールデータが受け付けられなかったことを示しています。

SMTPサーバーに接続できて、メール本文など送信できている。

ジンドゥー(Jimdo)SMTP 送信できない 主な問題点

  • 送信者のメールアドレスが許可されていない (550 5.1.0 Sender is not allowed to send from gmail.com (R2)):
    • SMTPサーバー(secure.emailsrvr.com)は、gmail.comドメインからの送信を許可していません。
    • これは、サーバーが特定のドメインからの送信を制限しているか、送信者のメールアドレスが設定と一致していない可能性があります。

考えられる原因と対処法:

  • 送信者のメールアドレスの誤り:
    • 送信者のメールアドレスがsecure.emailsrvr.comで許可されているか確認してください。
    • secure.emailsrvr.comのメールアカウントを使用する必要があります。
  • サーバー設定の問題:
    • SMTPサーバーの設定を確認してください。
    • ロリポップのサポートに問い合わせて、送信者のメールアドレスに関する制限を確認してください。
  • ドメイン認証の問題:
    • 送信者のドメイン認証(SPF、DKIM、DMARC)が設定されているか確認してください。

このログから、送信者のメールアドレスが許可されていないことが明確にわかります。まずは、secure.emailsrvr.comのメールアカウントを使用するように変更し、それでも問題が解決しない場合は、ロリポップのサポートに問い合わせることをお勧めします。

送信アドレスをジンドゥー以外のものは使えない仕様なのでしょうか?
他のアドレスでは未確認。

ジンドゥー(Jimdo)のメールアドレスに設定して、送信はOK!

よかったらシェアしてね!
  • URLをコピーしました!
目次