IMAP可以在本地计算机上运行,但不能在共享主机上运行


IMAP works on my localmachine but not on shared hosting

我正在通过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}in/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():数组([0]=>无法连接到imap.zoho.com,993:连接超时)

你可以试试这个:

imap_open("{imap.mail.eu-west-1.awsapps.com:993/imap/ssl}INBOX", "EMAIL", "PASS");

这是为AWS WorkMail编写的。您可以查看此文档:http://php.net/manual/en/ref.imap.php

这就是你所需要的。