0

W2K サーバー 2003 を実行している Web サーバーから smtp.mail.emea.microsoftonline.com に電子メールを送信しようとすると、次のエラーが表示されます。

SMTP -> FROM SERVER:220 smtp.mail.emea.microsoftonline.com Microsoft ESMTP MAIL Service ready at Thu, 8 Oct 2009 01:00:53 -0700 
SMTP -> FROM SERVER: 250-smtp.mail.emea.microsoftonline.com Hello [78.109.167.122] 250-SIZE 31457280 250-PIPELINING 250-DSN 250-ENHANCEDSTATUSCODES 250-STARTTLS 250-AUTH 250-8BITMIME 250-BINARYMIME 250 CHUNKING 
SMTP -> ERROR: AUTH not accepted from server: 504 5.7.4 Unrecognized authentication type 
SMTP -> FROM SERVER:250 2.0.0 Resetting 
SMTP Error: Could not authenticate. 

誰が何が間違っているかを見つけることができますか? php.ini にも次の設定があります。

[mail function]
; For Win32 only.
SMTP = smtp.mail.emea.microsoftonline.com
smtp_port = 587
; For Win32 only.
sendmail_from = enquiries@domain.com

require_once('class.phpmailer.php');

$mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch

$mail->IsSMTP(); // telling the class to use SMTP

try {
  $mail->Host       = "smtp.mail.emea.microsoftonline.com"; // SMTP server
  $mail->SMTPDebug  = 2;                     // enables SMTP debug information (for testing)
  $mail->SMTPAuth   = true;                  // enable SMTP authentication
  //$mail->SMTPSecure = "ssl";                 // sets the prefix to the servier
  $mail->Port       = 587;                   // set the SMTP port for the server
  $mail->Username   = "enquiries@domain.com";  // username
  $mail->Password   = "Password";            // password
  $mail->AddReplyTo('enquiries@domain.com', 'First Last');
  $mail->AddAddress('myemail@gmail.com', 'John Doe');
  $mail->SetFrom('enquiries@domain.com', 'First Last');
  $mail->AddReplyTo('enquiries@domain.com', 'First Last');
  $mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
  $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional - MsgHTML will create an alternate automatically
  $mail->MsgHTML(file_get_contents('examples/contents.html'));
  $mail->Send();
  echo "Message Sent OK</p>\n";
} catch (phpmailerException $e) {
  echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
  echo $e->getMessage(); //Boring error messages from anything else!
}
4

2 に答える 2

0

私は数ヶ月前に同じ問題を抱えています。また、SMTPSecure が原因で発生したエラーは ntlm を使用しています。Web からのメールの送受信が許可されているメール サーバーをリレーすることを忘れないでください。アカウントのメールアドレスとパスワードを再確認してください。それは正しいですか?

于 2009-11-25T15:59:28.480 に答える
0

最初に次の手動の手順を試して、接続できるかどうかを確認してください。

http://technet.microsoft.com/en-us/library/aa995718(EXCHG.65).aspx

また、このページ: http://www.gilham.org/Blog/Lists/Posts/Post.aspx?List=aab85845%2D88d2%2D4091%2D8088%2Da6bbce0a4304&ID=665

FROM アドレスは、"権限のある" タイプの SMTP ドメインを使用する必要があります。これは、Microsoft Online 管理センターの [ユーザー - ドメイン] タブで確認できます。

于 2009-10-08T08:28:30.800 に答える