【问题标题】:Codeigniter shows OpenSSL error whith GMailCodeigniter 显示 GMail 的 OpenSSL 错误
【发布时间】:2016-04-06 17:11:17
【问题描述】:

我有两个环境。一台电脑和一台笔记本电脑。 我在 PC 上开发了应用程序,发送电子邮件功能运行良好,但在笔记本电脑上它会引发 fsockopen() 错误。

消息:fsockopen():SSL 操作失败,代码为 1。OpenSSL 错误消息:错误:14090086:SSL 例程:ssl3_get_server_certificate:certificate verify failed

我的代码:

$config = Array(
        'protocol'  => 'smtp',
        'smtp_host' => 'ssl://smtp.gmail.com',
        'smtp_port' => 465,
        'smtp_user' => 'email@gmail.com',
        'smtp_pass' => 'password',
        'mailtype'  => 'html',
        'charset'   => 'utf-8'
    );

    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $this->email->from('email@gmail.com', 'email');
    $this->email->to($a);

    $this->email->subject($b);
    $this->email->message($c);

    $this->email->send();

我认为XAMPP版本是一样的,我检查了php.ini文件,extension=php_openssl.dll没有注释。

我做错了什么?

【问题讨论】:

    标签: php codeigniter email smtp xampp


    【解决方案1】:

    你需要在php.ini中设置openssl.cafile

    我刚刚下载了XAMPP,查了一下,好像在/xampp/perl/vendor/lib/Mozilla/CA/cacert.pem

    你的 php.ini 需要包含一行如openssl.cafile = C:\path\to\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem

    【讨论】:

    • 您应该尝试一下以确保。
    • openssl.cafile = C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem 同样的错误... :(
    猜你喜欢
    • 2010-12-04
    • 2012-11-08
    • 2014-05-25
    • 2015-07-28
    • 1970-01-01
    • 2016-09-22
    • 1970-01-01
    • 2015-12-13
    相关资源
    最近更新 更多