0

我需要阅读来自 gmail 的电子邮件,但我无法连接到 gmail pop3 服务器。有人能帮我一下吗 ?

这里的代码:

$pop3 = new POP3;
$pop3->server = 'pop.gmail.com';
$pop3->user = 'username';
$pop3->passwd = 'password';
$pop3->debug = true;
$pop3->pop3_connect()

结果:

Warning: fsockopen() [function.fsockopen]: unable to connect to pop.gmail.com:110 (Connection timed out) in /public_html/cron/pop3.php on line 64

谢谢

4

4 回答 4

1

根据此页面(使用 Outlook Express 连接到 Gmail),您必须使用端口 995 才能通过 POP3 访问 Gmail,此外,还必须启用 SSL。

维基百科也说明了这一点

电子邮件客户端可以使用传输层安全性 (TLS) 或安全套接字层 (SSL) 对 POP3 流量进行加密。使用 STLS 命令协商 TLS/SSL 连接。某些客户端和服务器(例如 Google Gmail)使用已弃用的备用端口方法,该方法使用 TCP 端口 995 (POP3S)。

于 2009-06-25T02:47:44.033 回答
0

我不确定它是否会对您有所帮助,但 GMAIL 有一个ATOM 提要。我编写了一个 PHP 脚本来使用 CURL 下载 Atom Feed,这样我就可以在我只支持非常简单的 HTML 的过时手机上查看我的电子邮件。因此,根据您要执行的操作,下载和处理 ATOM 提要可能比连接到 POP 服务器更容易。

于 2009-06-25T02:53:16.500 回答
0

我不知道您使用的是什么类 - 但例如,使用 Daniel Lemos 的 如下所示。关键是选择正确的端口 (995) 和正确的加密方法(对于您使用的任何 pop3 包,TLS 设置为 true)。例如,您可以使用类似下面的内容来启动连接。不太喜欢这个类的架构或示例代码(大量嵌套的 if 语句),但它可以完成工作。

$pop3=new pop3_class();
$apop=0;
$pop3->authentication_mechanism="USER";
$pop3->debug=0;
$pop3->html_debug=1;
$pop3->join_continuation_header_lines=1;
$pop3->hostname = "pop.gmail.com";
$pop3->port = 995; // The port that gmail uses...
$pop3->tls = 1; // This is encryption
$user = "someuser";
$password = "some password";

if( !empty($error=$pop3->Open()) ){
    die( "Something terrible happened..." );
}

$pop3->Login($user,$password,$apop);
于 2009-06-25T03:17:12.897 回答
0

我认为您的电子邮件有两个简单的选择:

  • 像 Kibbee 所说的 Cron atom feed。但是在发送消息和获取消息之间会有一点延迟。

  • 使用http://smtp2web.com/它将您的电子邮件发布到您的网站,这意味着更短的延迟。场外隐私不应该是至关重要的,因为您的邮件将通过中间。

于 2009-06-25T07:51:27.207 回答