【发布时间】:2016-01-28 23:01:24
【问题描述】:
我正在通过 imap 连接到一个电子邮件帐户:
$hostname = "{imap.zoho.com:993/imap/ssl/novalidate-cert}";
$imap = imap_open($hostname, 'email', 'password');
它在我的本地计算机上的 XAMP 上运行得非常好,但是当我从我的共享主机帐户 (host-ed.net) 运行它时,我收到以下错误:
警告:imap_open():无法打开流 {imap.zoho.com:993/imap/ssl/novalidate-cert} 在 /home/****/public_html/testmail.php 在第 4 行
警告:imap_num_msg() 期望参数 1 是资源,布尔值 在第 5 行的 /home/****/public_html/testmail.php 中给出
警告:imap_close() 期望参数 1 是资源,布尔值 在第 27 行的 /home/****/public_html/testmail.php 中给出
知道我的托管服务提供商可能是什么问题导致了这种情况吗?
编辑...
添加了 imap_errors 并得到这个(超时):
map_errors(): Array ([0] => 无法连接到 imap.zoho.com,993: 连接超时)
【问题讨论】:
-
你试过返回imap_errors吗?即使上面写着
Warning: imap_open(): ...,也有人建议here。 -
联系托管公司。他们可能有出站防火墙,阻止了连接。如果您在共享主机上有 shell 访问权限,您可以尝试使用 telnet 打开一个端口,例如
telnet imap.zoho.com 993 -
测试是否可以连接到服务器:openssl s_client -connect imap.zoho.com:993。
-
谢谢,我已经联系了托管服务提供商,他们已经解决了。我认为他们可能一直在阻塞端口 993
标签: php email ssl imap shared-hosting