使用IMAP获取Gmail收件箱

4
我从这里获取了一段代码来下载Gmail收件箱:http://davidwalsh.name/gmail-php-imap
use these 2 hostnames 
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
{imap.gmail.com:993/imap/ssl/novalidate-cert/norsh}Inbox

但是出现了这个错误。
 Warning: imap_open() [function.imap-open]: Couldn't open stream {imap.gmail.com:993/imap/ssl/novalidate-cert/norsh}Inbox in /home/medicalh/public_html/testmail.php on line 9
Cannot connect to Gmail: Can't connect to gmail-imap.l.google.com,993: Connection timed out

我在StackOverflow上搜索了,但没有找到解决方案。

谢谢

4个回答

5
将您的主机名更改为此名称并尝试。
$hostname= '{imap.gmail.com:993/ssl/novalidate-cert}';

请仔细检查用户名和密码是否正确


警告:imap_open() [function.imap-open]:无法打开流{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX,位于/home/medicalh/public_html/testmail.php的第9行 无法连接到Gmail:无法连接到gmail-imap.l.google.com,993:连接超时。 - Simer Twilio Toronto developer
如果我在这里发布整个代码,你能否在你的服务器上测试一下,不然就没有办法了。 - Simer Twilio Toronto developer

4
打开php.ini文件,删除;extension=php_imap.dll前面的;,然后重新启动您的服务器。这样您的代码就可以正常工作了。

2
您可以在我的网站下载我的 Gmail 类。 我还包含了一个测试文件,供您测试类文件。
如果它不能正常工作,我相信这可能是您服务器的问题。 您应该联系您的系统管理员。

我已经在本地测试了我的代码,一切正常,但是在服务器上却无法运行,所以我认为这是服务器的问题。我应该对我的服务器管理员说什么?需要激活哪些东西? - Simer Twilio Toronto developer

1
Gmail IMAP SSL身份验证的一个问题与Google帐户安全有关。如果您遇到登录错误,请先退出所有Google帐户,然后访问此链接:https://accounts.google.com/DisplayUnlockCaptchaenter image description here使用要通过imap访问的帐户登录。
按照步骤操作,然后就可以使用php imap登录到gmail了。
这里有可视化展示:http://jeffreifman.com/filtered-open-source-imap-mail-filtering-software-for-php/configuring-gmail/
来源:http://php.net/manual/en/function.imap-open.php

我寻找了好几天来解决这个错误,现在终于找到了。你真是太棒了,非常感谢! - Paul E. Stanciu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接