问题标签 [imap-open]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - php 函数 imap_open 在使用脚本通过 Windows 上的命令行运行时失败
我正在运行 Windows Server 2012,并且还在 Intranet 上运行 apache 和 PHP。
当我通过http://localhost/script.php拉脚本时,它运行没有问题,也没有问题。
当我通过命令行使用提示符运行相同的脚本时:C:\wamp\bin\php\php5.3.3\php.exe C:\wamp\www\script.php
当它到达 imap_open 时,它就死了。
这是完整的代码:
关于为什么它不能通过命令提示符工作的任何想法。
在 php.ini 中,我包括:
php - PHP imap_open 适用于 7.0.6 但不适用于 5.4.16
所以,我有一个通用/应用程序/系统帐户(术语不同),它可以访问多个邮箱。我使用的用户名是格式<domain>/<username>/<mailbox>
,这是唯一“与众不同”的东西。以下行适用于 PHP 7.0.6(我的笔记本电脑),但不适用于 5.4.16(开发服务器):
我得到的错误是:
PHP 通知:未知:无法对 IMAP 服务器进行身份验证:AUTHENTICATE 失败。(errflg=2) 在第 0 行的未知中
我试过的:
- 有效的邮箱的原始帐户(
<domain>/<user>
格式中的用户名) - 使用
/debug
in$mailbox
和OP_DEBUG
flag - 这些都没有做任何有用的事情 - 使用 python 调试到服务器的消息。这将验证用户名是否作为三段字符串发送并且也有效
- 删除第三段(邮箱)认为我可以稍后选择它 - 在两种情况/版本中都会导致身份验证失败
问题:
- 这是一个PHP错误吗?
- 有没有其他方法可以做到这一点?(我无法更改 PHP 版本)
- 我可以以某种方式启用消息记录吗?(没有 root 所以没有 tcpdump 选项)
php - 如何检查 imap_open() 是否在 php 中连接?
我正在尝试从特定的电子邮件帐户中获取电子邮件。当我在imap_open();
函数中传递正确的详细信息时,代码工作正常。但我想添加验证,当有人传递不正确的电子邮件地址或密码时,它应该返回错误。我按照this up-voted answer的指示进行操作,但它不起作用。
此外,当我添加错误的详细信息时,它会返回警告错误。
任何人都可以指导我如何检查 imap_open() 是否连接并防止警告错误,我可以解决这个问题。如果有人指导我,我将不胜感激。谢谢你。
php - 如何使用 imap 从 php 中的电子邮件中读取正文内容
我正在使用imap_open()
php 函数从我的邮件帐户中读取电子邮件并且它正在工作,我能够获取标题、主题、正文和附件。
但我想从正文中获取一些内容(下面的示例正文):-
以上是我的电子邮件正文内容imap_body($mail, $id)
进入 html,我想将票号123456789放入一个变量中,类似地将特殊说明右侧的值:
放入另一个变量中。
php - 在 PHP 中从 Gmail 中提取数据失败
朋友们,我将不胜感激任何对这个令人烦恼的问题的见解。我正在使用 PHP 使用非常标准的代码从 Gmail 帐户中删除电子邮件。它似乎适用于文本和 HTML 电子邮件,但绝不适用于任何带有附件或嵌入图像的电子邮件。更糟糕的是,它可以使用完全相同的代码,在同一平台上运行,在不同的 Gmail 帐户上正常工作。
下面是我输出带有嵌入图像或附件的电子邮件的已抓取 $message 时显示的示例:--对不起,Stackoverflow 拒绝让我包含图像。但它是一堆呈现为 ASCII 的二进制文件。
这是我的代码:
我很感激任何关于缺少什么会导致它无法阅读电子邮件的见解。谢谢!
这是乱码输出的样子:
��PNG IHDR��(/=�sRGB���pHYs��+tEXtSoftwareMicrosoft Office�5qh\IDATx^��Uu��1��������k����cm]�s�\��cm。 VT���a:��Ϲ�o��`�}��'0s 攻�{~�s~'���F ˌ�(�v�Z[�(צN�n+W��.] :ZӦM�ެl^�r��6s���-[n��̵Y�f[^�R�<[�j�eUɲƍYŊ��d�DO�0��h�2S-L� u��ڴi3l�����ʕ��+T�Z�k
php - php imap_open 与 microsoft exchange (outlook web app)
我工作的公司从 Lotus Notes 迁移到使用 Outlook Web App 的 Microsoft Exchange。自 2014 年以来,使用 Lotus Notes,我的 PHP 脚本运行良好。自从迁移到 MS Exchange 后,PHPimap_open
无法再访问此邮件帐户。
我的 PHP 代码如下所示:
无论我通过 PHP 尝试什么,我都会得到“登录失败”:
我尝试使用/ssl
而不是,/tls
但这会在端口 993 上产生超时。
但是,我可以在 Web 浏览器中通过https://mail.company.com/owa使用相同的用户名和密码登录。
有没有人有一些提示可以让我再次运行这个东西?谢谢!
php - imap_setflag_full 无法将电子邮件设置为已读 gmail
我有一个脚本可以检查用户邮箱并将这些电子邮件处理到票务系统中。99% 的时间脚本都可以正常工作。偶尔我会遇到一封电子邮件,在处理后没有被标记为已读。我没有使用该imap_setflag_full
标志将其标记为已读,它会自动执行。到目前为止,Gmail 正在发生这种情况。
因此,即使尝试使用imap_setflag_full
电子邮件仍然不会被标记为已读。我唯一能做的就是手动进入收件箱并删除电子邮件。
有人知道为什么会这样吗?
}
php - PHP imap_open 可以使用通配符 SSL 证书吗?
我正在使用 PHP 的imap_open
函数连接到 IMAP 电子邮件服务器。这已经工作了好几年了,但是最近更改了电子邮件服务器,我开始收到以下错误:
“无法连接到邮件服务器:
subdomain.mail.domain.com 的证书失败:无法在
证书中找到公用名”
电子邮件服务器的技术支持回复:
“我们证书的通用名称是“*.mail.domain.com”。由于它是通配符证书,因此没有明确的主机名。看来您的脚本期望证书显式返回“subdomain.mail” .domain.com”,而我们的通配符证书不会。这就是发生上述错误的原因。”
/novalidate-cert
如果我使用我能够连接的函数中的标志禁用 SSL 证书检查imap_open
,但我显然更愿意保持启用证书验证。有没有办法用通配符证书和imap_open
函数来做到这一点?
apache - php imap_open 在代理 ntlm auth 后面
下午好!
我遇到了“imap_open”问题,因为我在代理服务器后面,所以它无法打开与外部服务器的连接。
我用“stream_context_set_default”、“”stream_context_set_option“和”stream_context_set_params“尝试了几个设置。我不知道这些是否最适合我的情况,但在我的谷歌搜索中,这是他们通常指出的,这就是我专注的原因我自己给他们,因为我没有找到其他替代方案,所以我不知道我是否投资了错误的功能,或者我只是懒得尝试配置它们。
据我所知,我公司的代理使用 NTLM 身份验证。据我了解,这种身份验证比向代理服务器发送有效的用户名和密码要复杂得多。让我的情况更加复杂......
有没有人有过这样的事情,你能帮助我吗?也许给我一个我没有尝试过的替代方案....
谢!
php - 使用 imap_open 检索 Outlook 365 已发送文件夹
我正在使用交换服务器,并且可以使用以下代码下载收件箱:
但是,当我尝试下载发送的文件夹时,我没有运气。
我努力了:
以及“已发送文件夹”的各种其他名称。我错过了什么?
如果我使用 imap,我会收到以下错误:错误:[CLOSED] IMAP 连接断开(服务器响应)