この構成で、Mandrill を使用して CodeIgniter サイトからメールを送信することに成功しました。
$config['mailtype'] = "html";
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.mandrillapp.com';
$config['smtp_user'] = 'user';
$config['smtp_pass'] = 'password';
$config['smtp_port'] = '587';
$this->email->initialize($config);
しかし、Mandrill はトランザクション メールを行いたくないので、SparkPost に移行する必要があります。
ここに彼らのディレクティブがあります: https://support.sparkpost.com/customer/en/portal/articles/1988470-smtp-connection-problems
私はこの設定を試しました:
$config['mailtype'] = "html";
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'smtp.sparkpostmail.com';
$config['smtp_user'] = 'user';
$config['smtp_pass'] = 'password';
$config['smtp_port'] = '587';
$this->email->initialize($config);
しかし、送信先にメールはなく、エラーはありません。そこで、ホストに「tls」を追加しようとしました:
$config['smtp_host'] = 'tls://smtp.sparkpostmail.com';
そして、私はこのエラーが発生します:
メッセージ: fsockopen(): コード 1 で SSL 操作が失敗しまし た
。
ポート 2525 で同じエラーが発生しました。
ローカル MAMP サーバーの phpinfo の openssl セクションは次のとおりです。
OpenSSL サポートが有効
OpenSSL ライブラリ バージョン OpenSSL 0.9.8zg
2015 年 7 月 14 日 OpenSSL ヘッダー バージョン OpenSSL 0.9.8r 2011 年 2 月 8 日
しかし、Debian サーバーで phpinfo を使用して同じエラーが発生しました。
OpenSSL サポートが有効
OpenSSL ライブラリ バージョン OpenSSL 1.0.1e 2013 年 2 月 11 日
OpenSSL ヘッダー バージョン OpenSSL 1.0.1e 2013 年 2 月 11 日 Openssl
デフォルト設定 /usr/lib/ssl/openssl.cnf
どんな手掛かり ?
どうもありがとう。