自过去几天以来通过gmail发送电子邮件的问题php codeigniter
Posted
技术标签:
【中文标题】自过去几天以来通过gmail发送电子邮件的问题php codeigniter【英文标题】:Problems in sending email through gmail since past few days php codeigniter 【发布时间】:2018-05-18 21:45:18 【问题描述】:我有一个工作代码,它通过 Codeigniter 上的 email->send 功能发送电子邮件。 从昨天开始,这段代码刚刚停止工作。
以下是我正在使用的代码
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.gmail.com',
'smtp_port' => 465,
'smtp_user' => 'xxxx@gmail.com',
'smtp_pass' => 'xxxx',
'mailtype' => 'html',
'charset' => 'utf-8',
'smtp_crypto' => "ssl"
);
$data = array(
'userName'=> $firstName,
'link'=>$url
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->set_mailtype("html");
$this->email->from('finstlerforum@gmail.com', 'Finstler Support');
$this->email->to($email);
$this->email->subject('Reset Password requested');
$body = $this->load->view('email-template/forgotpassword',$data,TRUE);
$this->email->message($body);
if (!$this->email->send())
// show_error($this->email->print_debugger());
return false;
else
return true;
我从昨天开始收到以下错误
严重性:警告消息:fsockopen():SSL:握手超时 文件名:libraries/Email.php 行号:2055
消息: fsockopen():无法启用加密
消息:fsockopen():无法 连接到 ssl://smtp.gmail.com:465(未知错误)
我在我的机器上启用了 openssl,它正确显示为已启用。 非常感谢任何帮助!
【问题讨论】:
【参考方案1】:尝试使用以下配置:
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.gmail.com',
'smtp_port' => 587,
'smtp_user' => 'xxxx@gmail.com',
'smtp_pass' => 'xxxx',
'mailtype' => 'html',
'charset' => 'utf-8',
'smtp_crypto' => "tls"
);
【讨论】:
以上是关于自过去几天以来通过gmail发送电子邮件的问题php codeigniter的主要内容,如果未能解决你的问题,请参考以下文章