我在这里很近,我发现的所有例子都很有帮助。我可以从终端运行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 /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范围之外的内容。

任何建议将不胜感激

有帮助吗?

解决方案 2

因此,这不是对上面的特定问题的答案,而是解决这个问题要完成的方法的替代解决方案。

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

精简版。而不是使用别名

/var/qmail/alias

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

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

在该文件夹中是一个.qmail文件。当我对此进行修改时,结果就是成功。

感谢@dagon使我退后一步,并在更高级别上进行调试!

干杯,

其他提示

detdev,这是一个较晚的答复,但是您是否意识到您在此文件夹中创建的.qmail文件每次Mediatemple都会运行Plesk更新时都会被删除?

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

当我注意到我的电子邮件管道设置每月大约破裂时,我发现了这个问题,并发现.qmail文件是空的。

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

我在使用CHMOD -I .QMAIL覆盖.QMAIL文件的Plesk更新周围,因此无法更改该文件。自动更新时不会引起任何问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top