Gmail,IMAP连接中断(服务器响应)(errflg = 2)

时间:2017-06-07 12:26:15

标签: php codeigniter gmail imap

我正在使用whm并使用gmail

为Gmail设置的安全性较低的应用

在gmail中启用了imap

我在代码点火器中有以下代码作为cron作业,每10分钟运行一次。

<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>

<table>
  <thead>
    <tr>
      <th>Day</th>
      <th>Note</th>
      <th>Accumulate</th>
    </tr>
  </thead>
  <tbody data-bind="foreach: items">
    <tr>
      <td data-bind="text: day"></td>
      <td data-bind="text: note"></td>
      <td data-bind="text: acc"></td>
    </tr>
  </tbody>
</table>

它给了我这个错误:

Filename: cs/cron.php, line number: 237, I have:

$conn = imap_open("{imap.gmail.com:993/imap/ssl}Hub Service Updates", "test@test.com", "password", OP_READONLY)  or die('Cannot connect to Gmail: ' . imap_last_error());
$imc = imap_check($conn);
$totalMessage = $imc->Nmsgs;

我在同一个whm服务器的终端中运行此脚本,它正在运行。 var_dump能够输出正确的信息。

A PHP Error was encountered
Severity: Warning
Message: imap_open(): Couldn't open stream {imap.gmail.com:993/imap/ssl}Hub Service Updates
Filename: cs/cron.php
Line Number: 237



Cannot connect to Gmail: [CLOSED] IMAP connection broken (server response)
A PHP Error was encountered
Severity: Notice
Message: Unknown: [CLOSED] IMAP connection broken (server response) (errflg=2)
Filename: Unknown
Line Number: 0

的var_dump

<?php
$conn = imap_open("{imap.gmail.com:993/imap/ssl}Hub Service Updates", "test@test.com", "passowrd", OP_READONLY)
or die('Cannot connect to Gmail: ' . imap_last_error());

$imc = imap_check($conn);

$totalMessage = $imc->Nmsgs;
var_dump($imc);
var_dump($totalMessage);

1 个答案:

答案 0 :(得分:0)

我不知道这是否与您的问题相同,但我们也开始收到您提到的“连接中断”错误消息。

我们有一个 G Suite 企业帐户,而我们连接的电子邮件帐户由该企业管理。事实证明,在 admin.google.com 上登录管理控制台并转到该用户会在屏幕顶部显示一条红色的大消息:

“客户的帐户已超出通过 IMAP 下载的 Gmail 带宽限制。”

它提供了通常的“恢复”按钮,警告它每年只能恢复 5 次。我们以前看到过这种情况,因为我们每天发送的电子邮件过多并且帐户被暂停。

一旦恢复,PHP imap 连接到该邮件帐户就成功了。

enter image description here