2015-08-26 90 views
8

我已啓用OpenSSLIMAP函數從我的php.ini文件和phpinfo()確認它。使用PHP和IMAP連接到Gmail

通過使用代碼下面我可以連接到Hotmail帳戶但不Gmail帳戶。(當然我改變$connect_to指向的Hotmail。)

$connect_to = '{imap.gmail.com:993/imap/ssl}INBOX'; 
$connection = imap_open($connect_to, $user, $password) 
    or die("Can't connect to '$connect_to': " . imap_last_error()); 
imap_close($connection); 

返回的錯誤是

Warning: imap_open(): Couldn't open stream {imap.gmail.com:993/imap/ssl}INBOX in /opt/lampp/htdocs/webmail_client_practise/index.php on line 6 
Can't connect to '{imap.gmail.com:993/imap/ssl}INBOX': Certificate failure for imap.gmail.com: unable to get local issuer certificate: /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA 
Notice: Unknown: Certificate failure for imap.gmail.com: unable to get local issuer certificate: /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA (errflg=2) in Unknown on line 0 

不幸的是,我找不到如何使用IMAP功能的完整教程。

任何想法,解決方案或建議將會有所幫助。

+2

你錯過了「{」 {imap.gmail.com:993/imap/ssl}INBOX –

+1

我要問,如果你能訪問除INBOX –

+0

我還有其他的任何其他文件夾用新錯誤@SarDauMort更新了帖子 - 謝謝,我編輯了我的錯誤。 – Makis

回答

14

UPDATE:

尋找我在互聯網上的問題後,我沒有發現,徹底解決了我的問題的解決方案。雖然如果

1)我使用了不安全$connect_to = '{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX';

2),並允許由less secured apps訪問Gmail時,

解決我的問題現在。

請檢查該https://support.google.com/accounts/answer/6010255?hl=en

1

首先檢查您的服務器上的日期和時間設置是否正確。

或者嘗試:

$connect_to = '{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX', 

這將試圖驗證證書停止。

我可能會從人們那裏得到積極的評價,告訴我這是不好的做法,因爲這會讓你在中間人攻擊中對人開放。這是真的。

+0

哈哈!是的我知道! '警告:imap_open():無法打開第6行的/opt/lampp/htdocs/webmail_client_practise/index.php中的流{imap.gmail.com::993/imap/ssl/novalidate-cert}INBOX ' t連接到'{imap.gmail.com::993/imap/ssl/novalidate-cert}INBOX':無法打開郵箱{imap.gmail.com::993/imap/ssl/novalidate-cert}INBOX:無效的遠程規範 注意:未知:無法打開郵箱{imap.gmail.com::993/imap/ssl/novalidate-cert}INBOX:無效的遠程規範(errflg = 2)在未知的行0上這是我的新錯誤 – Makis

+0

你已經把兩個冒號...或者我在我的回答@Makis,對不起! –

+0

繼續...'警告:imap_open():無法在/opt/lampp/htdocs/webmail_client_practise/index.php中打開流{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX在線6 無法連接到'{imap.gmail.com:993/imap/ssl/novalidate-cert}INBOX':無法對IMAP服務器進行身份驗證:[ALERT]請通過您的網絡瀏覽器登錄:https: //support.google.com/mail/acco ........... – Makis