发送邮件的SMTP协议不能与codeigniter一起使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了发送邮件的SMTP协议不能与codeigniter一起使用相关的知识,希望对你有一定的参考价值。
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.gmail.com',
'smtp_port' => 465,
'smtp_user' => 'XXXX@XXXX.com',
'smtp_pass' => 'XXXX',
'mailtype' => 'html',
'charset' => 'iso-8859-1'
);
$this->load->library('email', $config);
$this->email->set_newline("
");
$this->email->from('xxxxx@xxx.com', 'xxxx');
$this->email->to($email);
$this->email->subject('Hi');
$this->email->message('Hi');
if($this->email->send())
{
echo 'Your email was sent.';
}
else
{
show_error($this->email->print_debugger());
}
但它显示错误消息:fsockopen():无法连接到smtp.gmail.com:465(连接被拒绝)。
我在这里看到Sending mail with CodeIgniter using SMTP protocol not working的解决方案,但它无法正常工作,我无法找到php.ini。
答案
我正在使用这种方式,它对我有用:
$config = array(
'protocol' => 'smtps',
'smtp_host' => 'ssl://smtps.googlemail.com',
'smtp_user' => DONOT_EMAIL,
'smtp_pass' => EMAIL_PASSWORD,
'smtp_port' => '465',
'mailtype' => 'html',
'smtp_timeout' => '4',
'newline' => "
"
);
这段代码我用于服务器端。每次在本地或服务器中使用邮件功能时,请确保。像这样初始化:
$this->email->initialize($config);
以上是关于发送邮件的SMTP协议不能与codeigniter一起使用的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 CodeIgniter SMTP 发送 Html 邮件
CodeIgniter 上的 SMTP 显示成功,但电子邮件未发送到 Gmail 帐户