我尝试设置与邮件服务器的IMAP连接,问题是它失败并显示消息:
array(4) {
[0]=> string(81) "Retrying PLAIN authentication after [AUTHENTICATIONFAILED] Authentication failed."
[1]=> string(81) "Retrying PLAIN authentication after [AUTHENTICATIONFAILED] Authentication failed."
[2]=> string(82) "Can not authenticate to IMAP server: [AUTHENTICATIONFAILED] Authentication failed."
[3]=> string(49) "[CLOSED] IMAP connection broken (server response)"
}
我用来打开连接的代码是:
$mbox = imap_open('{server.test.com:993/imap/ssl}INBOX', 'user@test.com', 'password');
我已经为我的Gmail帐户测试了相同的语法,但它运行正常。我可以连接到server.test.com
并使用thunderbird进行身份验证(IMAP-SSL-993),因此邮件服务器确实没有问题。
我已经通过Stack Overflow搜索了这个问题,但我还没有设法解决它,下面是我迄今为止尝试过的所有解决方案:
$mbox = imap_open('{server.test.com:993/imap/ssl}INBOX', 'user@test.com', 'password', null, 1, array('DISABLE_AUTHENTICATOR' => 'PLAIN'));
$mbox = imap_open('{server.test.com:995/pop3/ssl}INBOX', 'user@test.com', 'password');
$mbox = imap_open('{server.test.com:993/imap/ssl/novalidate-cert}INBOX', 'user@test.com', 'password'); (The cert is valid)
$mbox = imap_open('{server.test.com:993/pop3/ssl/novalidate-cert}INBOX', 'user@test.com', 'password'); (The cert is valid)
$mbox = imap_open('{server.test.com:993/imap}INBOX', 'user@test.com', 'password');
$mbox = imap_open('{server.test.com:993/pop3}INBOX', 'user@test.com', 'password');
$mbox = imap_open('{server.test.com:993}INBOX', 'user@test.com', 'password');
问题可以来自哪里?我还会发布上面提到的所有解决方案的所有错误消息,以及稍后的邮件服务器和php日志。
注意:要表示我使用的错误:
var_dump(imap_errors());
答案 0 :(得分:0)
由于Web服务器和邮件服务器在同一台服务器上运行,我设法连接服务器IP地址:
$mbox = imap_open('{127.0.0.1:993/imap/ssl/novalidate-cert}INBOX', 'user@test.com', 'password');