PHPMailer で Google SMTP 経由でメールを送信できない
質問
Google の SMTP と PHPMailer を組み合わせてメールを送信しようとしていますが、機能することができません。これは私のコードです:
$mail->IsSMTP();
$mail->Host = "smtp.gmail.com";
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Username = "myemail@gmail.com";
$mail->Password = "**********";
$mail->Port = "465";
まず、「SMTPSecure」として何を入力すればよいのかよくわかりません。「ssl
'、他の人は言う'tls
'。次に「ポート」に「465」または「587」を入力します。しかし、どの組み合わせも機能しません...Google Apps ではなく、通常の Gmail アカウントを使用していることに注意してください。Gmail アカウントで「POP アクセス」を有効にしました。
私が受け取るエラーは次のとおりです:」Must issue a STARTTLS command first
」。これは SSL が失敗したことを意味しますが、理由はわかりません...
解決
わかりました、問題は PHPMailer のバージョンでした。PHPMailer バージョン 5 に更新したところ、すべて問題なく動作しました。phpMailerバージョン1.02を使用していました。
他のヒント
CodeIgniter経由でGMailを使用したときにも同様の問題が発生しました
私の場合、ホストオプションを変更するとうまくいきました。
$mail->Host = "ssl://smtp.googlemail.com";
$mail->SMTPDebug = 1 を設定します。このエラーに関する詳細情報が表示されます。ほとんどの場合、「ソケットトランスポート」「SSL」を見つけることができません - PHPを構成したときに有効にすることを忘れていましたか」。これを修正するには ";" from; extension = php_openssl.dll in in php.ini。
ps私もxamppが好きです:)))
$host = "ssl://smtp.gmail.com";$ポート = "465"
SSLからSSLに変更しました。それは動作します。
こちらの投稿によると、Google はこのサービスを今後提供しない可能性があります。
http://www.web-development-blog.com/archives/send-e-mail-messages-via-smtp-with-phpmailer-and-gmail/