GMail fsockopen():Codeigniter和XAMPP的SSL操作失败错误

时间:2016-01-02 19:52:13

标签: php codeigniter ssl xampp gmail

  

错误消息1:消息:fsockopen():SSL操作失败,代码为1. OpenSSL错误消息:错误:14090086:SSL例程:ssl3_get_server_certificate:证书验证失败

     

文件名:libraries / Email.php

     

行号:1962

     

错误消息2:消息:fsockopen():无法启用加密   错误消息3:消息:fsockopen():无法连接到> ssl://smtp.gmail.com:465(未知错误)

php.ini: extension=php_openssl.dll - >取消注释 我尝试过:openssl.cafile= C:\xampp\perl\vendor\lib\Mozilla\CA\cacert.pem 我试过禁用防火墙 我尝试过另一个网络

Codeigniter PHP代码:

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

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

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

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

    $this->email->send();

2 个答案:

答案 0 :(得分:15)

就我而言,Avast Antivirus阻止了该端口。我使用SMTP端口 465 从我的CodeIgniter项目发送电子邮件。它显示错误:

  

fsockopen()无法启用加密

简单地禁用Avast Antivirus解决了这个问题。

替代解决方案

但是如果你想保持你的Avast安全,你应该:

  • 打开Avast

  • 点击设置(页面右上角)

  • 点击疑难解答

  • 点击重定向设置

  • 重定向设置 MAIL 部分

  • 清除您使用的端口
  • 点击确定

  • 关闭Avast

答案 1 :(得分:0)

今天是 2021 年 4 月 5 日 我也有同样的问题

windows 中的 xampp 和 apache/php 不发送电子邮件。

经过一些调试后,您最终发现无法访问远程端口 465 和 587。最后你发现禁用 Avast 问题解决了。

我就是这样回答这个问题的。

但不幸的是,目前的 Avast 已接受的解决方案看起来不再好,所以...

2021 年 Avast 重定向设置在哪里?

不幸的是,目前的 Avast 似乎没有重定向设置

鉴于临时解决方案是禁用 Avast 保护(此方法有效,然后您将能够使用 PHPMailer 和其他邮件库发送电子邮件)并考虑到:

  • 每次临时禁用 Avast 10 分钟/1 小时是一种烦人且可能“危险”的解决方案
  • 现在永久禁用 Avast 或防病毒软件不是一个好主意

我更喜欢永久的和“更安全”的,事实上,如果防病毒软件有效..我不能从我的计算机发送恶意电子邮件

这是我应用的永久解决方案

  1. 打开 Avast 用户界面(右键单击 Avast 托盘图标)
  2. 转到“菜单”(右上角的汉堡菜单)
  3. 然后转到设置>保护(左侧面板上的中间图标)
  4. 在出现的第二列中,点击“主要保护”
  5. 现在在右侧面板中,向下滚动到“配置保护设置”
  6. 在“配置保护设置”下有 4 个标签
  7. 第四个标签是“电子邮件保护”
  8. 取消选中“扫描外发邮件 (SMTP)”

就是