0

我离这里很近,我发现的所有示例都很有帮助。我可以从终端运行 PHP,但无法从收到的电子邮件中运行脚本。

我缺少的部分是让传入的电子邮件连接到 qmail 别名

为上下文。我使用的电子邮件是

bb3k@thatdomain.com

在服务器的根目录中,我创建了一个别名

/var/qmail/alias

别名被命名

.qmail-bb3k

在我的 .qmail-bb3k 文件中

|/var/www/vhosts/thatdomain.com/cgi-bin/scrapeAttachment.php

直接运行该文件给了我

./.qmail-bb3k: line 1: syntax error near unexpected token `|'

向 bb3k@thatdomain.com 发送电子邮件什么也没做,电子邮件可以通过,但 PHP 脚本永远不会运行。

每次修改脚本时,qmail 都会重新启动(不确定是否有必要。)

我可以通过修改 .qmail-bb3k 脚本来运行 PHP 脚本

php /var/www/vhosts/thatdomain.com/cgi-bin/scrapeAttachment.php

从终端运行时有效,我们已经知道了,但是四重检查并没有什么坏处

我一直在引用的链接

http://www.evolt.org/incoming_mail_and_php

http://www.geeksdrafts.net/blog/2011/02/11/sample-qmail-files/

有足够多的移动部件,我不确定是否存在简单的语法问题或 bash 和 php 范围之外的东西。

任何建议将不胜感激

4

3 回答 3

1

DetDev,这回复有点晚了,但是您是否意识到每次 MediaTemple 运行 Plesk 更新时,您在此文件夹中创建的 .qmail 文件都会被删除?

/var/qmail/mailnames/thatdomain.com/user

当我注意到我的电子邮件管道设置大约每月中断一次并且看到 .qmail 文件为空时,我发现了这个问题。

不幸的是,除了手动重新创建文件之外,我还没有找到解决方案。当我无法修复服务器并且消息丢失时,这很麻烦。

于 2013-05-28T21:34:52.100 回答
0

因此,这不是对上述特定问题的答案,而是该问题试图完成的替代解决方案。

仅供参考,这是在 Plesk 上,MT 作为托管服务提供商。不同的服务器,不同的设置 YMMV...

精简版。而不是在下使用别名

/var/qmail/alias

并在那里创建 .qmail-user 我只是去了特定用户

/var/qmail/mailnames/thatdomain.com/user

该文件夹中有一个 .qmail 文件。当我修改它时,结果是成功的。

感谢@Dagon 让我退后一步并在更高级别进行调试!

干杯,

于 2011-10-19T15:47:16.920 回答
0

我绕过 plesk 更新使用 chmod -i .qmail 覆盖 .qmail 文件,因此无法更改文件。自动更新时没有引起任何问题。

于 2015-01-15T00:05:36.677 回答