2

我正在设置一个“类似代理”的电子邮件,通知电子邮件会发送给他订阅的用户,但他可以回复notification@site.com应该包含他的回复的电子邮件。在服务器端,我希望能够阅读他的电子邮件并将他的回复添加到数据库中 - 电子邮件存储在notification用户收件箱中,这很棒,现在可以使用 PHP 阅读它。

所以,我一直在寻找解决方案,很多解决方案都是 IMAP,所以我想我会试一试,但我似乎无法确定我的服务器连接以打开收件箱。我已经调整到不同的端口,但它们都无法连接。

imap_open("{localhost/imap:143}", "notification", "password");

我收到这样的错误:

Warning: imap_open(): Couldn't open stream {localhost/imap:143} in /var/www/site.com/www/mail.php on line 8
bool(false)

Notice: Unknown: Connection failed to localhost,143: Connection refused (errflg=1) in Unknown on line 0

Notice: Unknown: Connection failed to localhost,143: Connection refused (errflg=1) in Unknown on line 0

Notice: Unknown: Connection failed to localhost,143: Connection refused (errflg=1) in Unknown on line 0

Notice: Unknown: Connection failed to localhost,143: Connection refused (errflg=2) in Unknown on line 0

我不明白,显然这是我第一次尝试这个,但是我显然在连接上做错了什么?

编辑:我courier-imap现在开始我得到这个:

Notice: Unknown: [CLOSED] IMAP connection broken (server response) (errflg=1) in Unknown on line 0

Notice: Unknown: [ALERT] Fatal error: No such file or directory: No such file or directory in Unknown on line 0
4

2 回答 2

3

您在这里要求进行基本调试,所以我尝试一下,也许这台机器

您是否尝试过指定邮箱?顺便说一句,您实际上应该使用正确的语法,它是host:port/protocol默认imap协议,您可以将其省略:

imap_open("{localhost:143}INBOX", "notification", "password");
            ^^^^^^^^^^^^^ ^^^^^

请与imap_openDocs上的许多示例和注释进行比较。

另外,由于这是调试,请尝试:

var_dump(imap_errors(), imap_alerts());

调试愉快。

于 2012-08-09T21:38:54.037 回答
1

我在我的 Ubuntu 11.04 系统上遇到了完全相同的问题,我已经通过使用以下命令在我的主目录(如此处所述)中创建“Maildir”文件夹来解决:

cd ~
maildirmake Maildir
maildirmake Maildir/.Drafts
maildirmake Maildir/.Sent
maildirmake Maildir/.Trash
maildirmake Maildir/.Templates
chmod -R 700 Maildir

首先,您应该检查日志文件“/var/log/syslog”中的错误(例如通过执行命令sudo tail /var/log/syslog)。
在我的日志中,我注意到以下错误:imapd: chdir Maildir: No such file or directory.
所以我检查了配置文件“/etc/courier/imapd”,发现 MAILDIRPATH 选项设置为“Maildir”:

#
# MAILDIRPATH - directory name of the maildir directory.
#
MAILDIRPATH=Maildir

然后我创建了如上所述的“Maildir”文件夹,“imap_open()”函数终于起作用了。

于 2012-08-14T21:01:17.083 回答