我尝试从我的localhost(XAMPP Apache服务器)使用Eden邮件PHP获取Gmail收件箱电子邮件。但它引发了一个致命的错误:
致命错误:未捕获的Eden \ Mail \ Exception:连接问题 SSL://imap.gmail.com:993。检查您的服务器,端口或ssl设置 电邮服务器。 在C:\ xampp \ htdocs \ edenMail \ vendor \ eden \ mail \ src \ Imap.php:357
堆栈追踪:
0 C:\ xampp \ htdocs \ edenMail \ vendor \ eden \ mail \ src \ Imap.php(170):Eden \ Core \ Exception :: i()
1 C:\ xampp \ htdocs \ edenMail \ vendor \ eden \ mail \ src \ Imap.php(357):Eden \ Mail \ Imap-> connect()
2 C:\ xampp \ htdocs \ edenMail \ index.php(36):Eden \ Mail \ Imap-> getMailboxes()
3 {main}
在第357行的C:\ xampp \ htdocs \ edenMail \ vendor \ eden \ mail \ src \ Imap.php中抛出
我在Eden mail的index.php文件中使用了以下代码和我自己的凭据。
$imap = eden('mail')->imap(
'imap.gmail.com',
'myEmailId',
'myPassword',
993,
true);
除此之外,我还启用了IMAP / POP3,并在我的Gmail设置中启用了安全性较低的应用。
仅当我尝试从localhost(Windows-Xampp-Apache服务器)连接时才遇到此错误。但是,如果我的Web服务器中的测试代码在Linux环境中工作,则没有错误。
有人可以帮我连接google imap.gmail.com来检索收件箱电子邮件吗?
答案 0 :(得分:0)
我已按照以下链接中的说明进行操作,并解决了问题。我正在分享它,好像可以帮助任何有同样问题的人。
https://www.hesk.com/knowledgebase/?article=72
»电子邮件发送
要使用Gmail服务器发送电子邮件,请输入以下详细信息:
SMTP Host: smtp.gmail.com
SMTP Port: 587
SSL Protocol: OFF
TLS Protocol: ON
SMTP Username: (your Gmail username)
SMTP Password: (your Gmail password)
另外,请确保将HESK设置中的“发件人电子邮件地址”设置为您的Gmail电子邮件地址!
还没运气?如果他们在防火墙中阻止端口587,请与您的主机核实。
»POP3抓取
要从Gmail服务器获取邮件,请输入以下详细信息:
POP3 Host: pop.gmail.com
POP3 Port: 995
TLS Protocol: ON
POP3 Username: (your Gmail username)
POP3 Password: (your Gmail password)
重要提示:100%确定Gmail设置中的“POP3下载” 设置为“为从现在开始到达的邮件启用POP”。如果不, Gmail会将所有现有(甚至已阅读)的消息发送给HESK 先连接。
»IMAP抓取
要从Gmail服务器使用IMAP提取邮件,请输入以下详细信息:
POP3 Host: imap.gmail.com
POP3 Port: 993
Encryption: SSL
POP3 Username: (your Gmail username)
POP3 Password: (your Gmail password)
»错误消息
连接超时
服务器防火墙上可能阻止了所需的端口。要求您的主机配置防火墙以允许端口587
,995
和/或993
上的TCP连接。
由于他们的政策,一些托管公司不会这样做。在这种情况下,您需要为了将Gmail与HESK集成,找到另一台主机或尝试使用HESK云。
许可被拒绝
尝试在此处使用您的Google帐户进行记录,以解锁应用程序访问权限。
点击“继续”按钮以允许访问您的Google帐户。
密码错误:[AUTH]不接受用户名和密码。太多 登录失败
您的用户名和/或密码不正确,请仔细检查广告,记住密码是CaSe SeNSiTiVe!
密码错误:[AUTH]需要Web登录
错误:0无法连接到主机“pop.gmail.com”
这可能意味着:
服务器防火墙上阻止了所需的端口。要求您的主机取消阻止端口587,995和/或993上的TCP连接 - 或者 -
您的服务器上的SSL证书验证失败。试试这个:
下载此文件
将其保存到服务器的某个位置,例如C:\wamp\ssl\cacert.pem
打开您的php.ini
文件
找到行
;openssl.cafile=
并将其更改为cacert.pem
文件的位置,同时删除起始;
openssl.cafile=C:\wamp\ssl\cacert.pem
保存并重启服务器 再次测试