PHP imap_open - 不能使用SSL和novalidate-cert参数

时间:2014-06-25 08:52:33

标签: php ssl imap-open

我尝试通过PHP打开IMAP连接

imap_open ("{localhost:993/ssl}", "username", "pwd")
好吧,这并没有按预期工作,因为我使用的是自签名证书。但至少我收到了一个错误:

Warning .... Couldn't open stream

所以我试试

imap_open ("{localhost:993/ssl/novalidate-cert}", "username", "pwd")

然后:没有 - 白页 - 没有错误或警告,服务器日志中没有错误。

邮件服务器配置正确 - 在此端口上通过thunderbird或outlook与启用的ssl-encryption连接没问题。

我还尝试将imap_open和ssl以及novalidate-cert连接到127.0.0.1,连接到主机名,连接到IP地址 - 只要我添加novalidate-cert参数,这些试验就无法运行。我不知道为什么。

我还检查了php_info:为IMAP启用了SSL,并且openssl也处于活动状态。

如果我在没有SSL的情况下连接,一切正常。 非常感谢你的帮助

1 个答案:

答案 0 :(得分:0)

尝试在ssl之前添加imap, 它应该是:

imap_open ("{localhost:993/imap/ssl/novalidate-cert}", "username", "pwd")