Php

我需要為 IMAP 連接打開哪些埠

  • April 23, 2013

我正在開發一個連接到 IMAP 郵箱並獲取電子郵件作為其功能的一部分的 Web 應用程序。

該應用程序是 PHP,我正在這樣連接:

public function connect()
{
   /* connect to gmail */
   $hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
   $username = $this->username;
   $password = $this->password;

   /* try to connect */
   $this->inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Gmail: ' . imap_last_error());
}

在我的 Mac 上本地開發這很好,我能夠連接並接收電子郵件。但是,現在我已將應用程序放在我的網路主機伺服器上,我收到以下錯誤:

Cannot connect to Gmail: Can't connect to gmail-imap.l.google.com,993: Connection timed out

在與我的託管服務提供商核實後,他們告訴我埠 993 上的傳出連接被阻止。有沒有辦法解決?否則我需要升級到專用伺服器:S

您將需要升級,或詢問您的主機是否可以打開該埠。

您實際上自己給出了答案 - 埠是 993,而且 afaik 沒有辦法繞過它。

沒有辦法繞過埠塊。與其升級到專用伺服器,您可以轉移到不阻止埠的託管服務提供商,或者您可以查看是否可以選擇 POP3,而不是 SSL。同樣安全,甚至更容易編碼。

引用自:https://serverfault.com/questions/434333