内部で数人が使用するデスクトップでWAMPSERVERを使用してWebアプリを正常にセットアップしました。これは、暗号化または認証なしで内部SMTPサーバーにPHPMailerを使用し、機能しました。
そのデスクトップがクラッシュし、「新しい」デスクトップに移行しました。私はSVNをセットアップしていたので、ほとんど同じファイルと構成を使用していました。重要な違いの 1 つは、古いデスクトップが 64 ビットで、新しいデスクトップが 32 ビットであることです。これは、異なるバージョンの WAMPSERVER を使用していることを意味します。
メーラーがハングするだけです。PHP エラーまたは PHP タイムアウトが発生しません。スクリプトの最後に到達することはありません。これのクレイジーな部分は、認証、ssl、および gmail で動作することです。私が必要とする非常に単純なケースでは機能しません。
これは機能します:
<?php
require('class.phpmailer.php');
$mail=new PHPMailer();
$mail->ISSMTP();
$mail->Host='smtp.gmail.com';
$mail->Subject='test subj';
$mail->Body='the body email test';
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "myemail@gmail.com"; // GMAIL username
$mail->Password = "mypassword"; // GMAIL password
$mail->AddAddress('toemail@supersecret.com', 'John Doe');
$mail->SetFrom('something@gmail.com', 'First Last');
$mail->Send();
?>
これは以前はありましたが、現在はそうではありません:
<?php
require('class.phpmailer.php');
$mail=new PHPMailer();
$mail->ISSMTP();
$mail->Host='smtp.internal.com';
$mail->Subject='test subj';
$mail->Body='the body email test';
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
$mail->Port = 25; // set the SMTP port for the GMAIL server
$mail->AddAddress('myaddress@somewhere.com', 'John Doe');
$mail->SetFrom('someaddress@mightbereal.com', 'First Last');
$mail->Send();
?>
デバッグから得られる唯一のものは
クライアント -> SMTP: EHLO デスクトップのホスト名
ページにエラーは表示されず、表示されない場合は通常 PHP エラーが発生する apache ログにも何も表示されません。
ポート 25 でデスクトップからホストに telnet で接続でき、EHLO コマンドを入力して、サーバーから適切な応答を得ることができます。
以前にこの問題が発生したことを覚えていませんが、すでに一度解決した可能性があります。ここまたはGoogleで役立つものは何も見つかりませんでした.
助けてください。ありがとう。