ホームページ >バックエンド開発 >PHPチュートリアル >CodeIgniter を使用して Gmail SMTP 経由で電子メールを送信するときに発生する「接続がタイムアウトしました」および「SSL 操作に失敗しました」エラーを修正する方法

CodeIgniter を使用して Gmail SMTP 経由で電子メールを送信するときに発生する「接続がタイムアウトしました」および「SSL 操作に失敗しました」エラーを修正する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-18 13:51:16248ブラウズ

How to Fix

CodeIgniter の電子メール ライブラリを使用した Gmail SMTP 経由の電子メール送信

CodeIgniter 電子メール ライブラリを使用して Gmail SMTP 経由の電子メール送信を実装中にエラーが発生し、次のことを示しています「接続がタイムアウトしました」または「SSL 操作が失敗しました」エラー。これを解決するには:

SMTP 接続がタイムアウトした場合:

  • Google アカウント設定で Gmail アカウントの「安全性の低いアプリへのアクセス」設定が有効になっていることを確認します。

SSL 運用の場合失敗:

  • ポート 587 の代わりに TLS 暗号化を備えたポート 465 を使用します。
  • SMTP ホストを ssl://smtp.googlemail.com に変更します。 ssl://smtp.gmail.com.

コード:

$config = [
    'protocol' => 'smtp',
    'smtp_host' => 'ssl://smtp.googlemail.com',
    'smtp_port' => 465,
    'smtp_user' => 'xxx',
    'smtp_pass' => 'xxx',
    'mailtype' => 'html',
    'charset' => 'iso-8859-1'
];
$this->load->library('email', $config);
$this->email->set_newline("\r\n");

// Set to, from, message, etc.

$result = $this->email->send();

このコードを変更すると、接続タイムアウトと SSL 操作の失敗が解決されます。

以上がCodeIgniter を使用して Gmail SMTP 経由で電子メールを送信するときに発生する「接続がタイムアウトしました」および「SSL 操作に失敗しました」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。