【发布时间】:2014-07-28 15:23:53
【问题描述】:
我在这上面花了 8 个小时,但还是没弄好。
我的情况:
我的服务器在Linux xrm 2.6.32-5-amd64 上运行;
在控制台中:openssl s_client -connect ns1.example.com:995 工作正常,连接成功。
但是当我执行这个脚本时:
一)
$res = imap_open("{ns1.example.com:993}",
"user@example.lv", "password");
回复是:Array ( [0] => [CLOSED] IMAP connection broken (server response) )
b)
$res = imap_open("{ns1.example.com:993/ssl}",
"user@example.lv", "password");
回复:Array ( [0] => Certificate failure for ns1.example.com: self signed certificate: /CN=ns1.example.com/emailAddress=ssl@ns1.example.com )
这是否与这个脚本在drupal目录下有关?
它使用与服务器不同的php.ini?
即使当我执行php_info() 时,它表示 imap 和 imap/ssl 已启用。
我已经尝试了所有imap_open() 标志,但仍然没有运气。
我什至无法连接到标准的 gmail 邮箱。 请让我离开这里。
【问题讨论】:
-
自签名证书默认被拒绝,因为它们是自签名的。任何人都可以创建一个显示“google.com”的证书,但由于它是自签名的,因此默认情况下没有 SSL 库会信任/使用它。您必须在您的 SSL 内容中禁用证书验证,或者将您的证书的假 CA 添加到您的 CA 存储中。