phpmailer发送邮件 SMTP Error: Could not authenticate 错误
今天在使用phpmailer发送邮件时居然提示SMTP Error: Could not authenticate,这个感觉是smtp设置的问题,下面我在网上找到了几种解决办法。
今天在使用phpmailer发送smtp邮件时提示 SMTP Error: Could not authenticate 错误,其中密码帐号都是正确的,邮箱也设置开启了SMTP功能。
上谷歌百度了一遍,有的说是服务器禁用了端口,有的说把class.phpmailer.php中的,代码如下:
function IsSMTP() { $this->Mailer = 'smtp'; }//改为 function IsSMTP() { $this->Mailer = 'SMTP'; }
测试以后还是不行,心中郁闷的一米,最后在一篇博客中找到了解决方法,先分享出来让更多遇到同样问题的人能得到帮助!
这个错误说明虚拟主机不支持PHPMailer默认调用的fsockopen函数,找到class.smtp.php文件,搜索fsockopen,就找到了这样一段代码:
// connect to the smtp server $this->smtp_conn = @fsockopen($host,// the host of the server $port,// the port to use $errno, // error number if any $errstr, // error message if any $tval); // give up after ? secs
方法1:将fsockopen函数替换成pfsockopen函数,首先,在php.ini中去掉下面的两个分号
;extension=php_sockets.dll
;extension=php_openssl.dll
然后重启一下,因为pfsockopen的参数与fsockopen基本一致,所以只需要将@fsockopen替换成@pfsockopen就可以了。
方法2:使用stream_socket_client函数
一般fsockopen()被禁,pfsockopen也有可能被禁,所以这里介绍另一个函数stream_socket_client(),stream_socket_client的参数与fsockopen有所不同,所以代码要修改为如下:
$this->smtp_conn = stream_socket_client("tcp://".$host.":".$port, $errno, $errstr, $tval);
这样就可以了,如果上面办法还是没有解决可能是邮箱自动过滤你机器自动登录邮箱发邮件了哦,我是使用下面办法解决的,刚开始使用的qq的帐号,提示上面错误。换成新注册的163帐号可以正常发送。之后换了一个qq等级比较高的帐号,这下可以正常发送,没有报任何错误。因为收件人用的是qq邮箱帐号,所以发件帐号用qq的邮箱比较好,这样发送过多不会轻易的被拦截或判为垃圾邮件。所以结论就是配置中使用一个qq等级比较高的帐号(我的一个小号等级2个月亮可以正常使用,当然等级越高越好,)
结论:也要查看邮箱中"设置邮件地址黑名单"及"收信规则",有时系统会自动将一些邮箱自动加入黑名单的

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Web アプリケーションでは、多くの場合、一度に複数の受信者に電子メールを送信する必要があります。 PHP は非常に人気のある Web 開発言語であり、PHPMailer は電子メールを送信するための一般的な PHP クラス ライブラリです。 PHPMailer は豊富なインターフェイスを提供し、PHP アプリケーションでの電子メール送信をより便利で使いやすくします。この記事では、PHPMailerを使って複数の宛先にメールを送信する方法と手順を紹介します。 PHPMailer をダウンロードするには、まず公式 Web サイト (

PHP 開発の実践: PHPMailer を使用して MySQL データベース内のユーザーに電子メールを送信する はじめに: 現代のインターネットの構築において、電子メールは重要なコミュニケーション ツールです。 ECにおけるユーザー登録やパスワードのリセット、注文確認など、メール送信は欠かせない機能です。この記事では、PHPMailer を使用してメールを送信し、メール情報を MySQL データベースのユーザー情報テーブルに保存する方法を紹介します。 1. PHPMailer ライブラリをインストールする PHPMailer は

Flask-Mail を使用して電子メールを送信する方法 インターネットの発展に伴い、電子メールは人々がコミュニケーションを図るための重要なツールになりました。 Web アプリケーションを開発する場合、ユーザーが正常に登録した後にウェルカム メールを送信したり、ユーザーがパスワードを忘れたときにパスワード リセット メールを送信したりするなど、特定のシナリオでメールを送信する必要がある場合があります。 Flask はシンプルで柔軟な Python Web フレームワークであり、Flask-Mail は Flask フレームワークでメールを送信するための拡張ライブラリです。

PHP と PHPMAILER を使用して画像が埋め込まれた HTML メールを送信するにはどうすればよいですか? HTML 電子メールは、電子メールに画像、リンク、スタイルを挿入できる、より充実したパーソナライズされた電子メール形式です。埋め込み画像とは、画像を添付ファイルとして送信するのではなく、HTML メールの電子メールの一部として直接送信することを指します。 PHP では、PHPMAILER を使用して、画像が埋め込まれた HTML 電子メールを送信できます。 PHPMAILER は強力な PHP 電子メール送信ライブラリです

PHP と PHPMAILER: 電子メール送信用のスパム対策機能を実装するにはどうすればよいですか?はじめに: インターネット時代において、電子メールは私たちの日常生活や仕事に欠かせないものになりました。しかし、電子メールの普及と利用に伴い、スパム問題はますます深刻化し、ユーザーに多大な迷惑を与えています。この問題を解決するために、この記事では、PHP と PHPMailer ライブラリを使用して、メール送信のスパム対策機能を実装する方法を紹介します。 1. スパムを理解する スパムとは、一方的に送信されるスパムを指します。

PHPとPHPMAILERを使いこなす:メール送信の自動返信機能を実装するには?現代社会では、電子メールは人々が毎日コミュニケーションをとるための重要な方法の 1 つになっています。多くの Web サイトや企業は電子メールを介してユーザーと通信する必要があり、電子メールへの自動返信が非常に重要になっています。この記事では、PHPとPHPMailerライブラリを使ってメール送信の自動返信機能を実装する方法を紹介します。ステップ 1: ユーザーの電子メール情報を取得する まず、ユーザーの電子メール情報を取得する必要があります。 Web サイトまたはアプリケーションで使用します。

PHPMailer ライブラリを使用して PHP で添付メールを送信する方法と注意点. 電子メールは現代生活において非常に重要なコミュニケーション手段となっています。多くの開発プロジェクトでは、コードを使用して電子メールを自動的に送信する必要がありますが、現時点では PHPMailer ライブラリが最適な選択です。 PHPMailer は、PHP での電子メール送信専用のライブラリです。 HTML形式のメールや添付ファイルを含むメールを簡単に送信できます。この記事では、PHPMailer ライブラリで添付ファイル付きの電子メールを送信する方法に焦点を当てます。

Python は、Alibaba Cloud インターフェースに接続してメール送信機能を実装します。Alibaba Cloud は、メール送信サービスを含む一連のサービス インターフェースを提供します。 Python スクリプトを介して Alibaba Cloud インターフェイスに接続すると、電子メールを迅速に送信できます。この記事では、Python スクリプトを使用して Alibaba Cloud インターフェイスに接続し、メール送信機能を実装する方法を説明します。まず、Alibaba Cloud でメール送信サービスを申し込み、対応するインターフェース情報を取得する必要があります。 Alibaba Cloud 管理コンソールで、電子メール プッシュ サービスを選択し、新しい電子メールを作成します
