gpt4 book ai didi

php - 使用 procmail 调用 php 脚本

转载 作者:行者123 更新时间:2023-11-29 09:37:12 24 4
gpt4 key购买 nike

我正在尝试进行一些自定义电子邮件转发。 #1 我在共享服务器上,它使用 qmail 和可选的 procmail。

我想要完成的是根据时间表对一个地址进行一些自定义电子邮件转发。例如,我有一个每个工作日工作的员工时间表,并且我有一个 php 脚本可以选择今天工作的随机员工的电子邮件地址。

所以我试图在 procmail 中调用该脚本,并在转发行上输出结果(这是一个电子邮件地址):

例子:

#Something
LOGFILE=/usr/home/myname/procmail-log
VERBOSE=yes
EXITCODE=99
MAILDIR=/usr/boxes/myname
DEFAULT=/usr/boxes/myname/mybox
SHELL=/bin/sh
MYVAR=$(php -q /usr/home/myname/testemail/emailtester.php)

:0
! $MYVAR

这是行不通的。完全没有。我也试过:

MYVAR=`php /usr/home/myname/testemail/emailtester.php`

以及将其通过管道输送到前线:

:0
! |php /usr/home/myname/testemail/emailtester.php

我完全不适应这里...我什至尝试不使用 procmail,我只是将整个电子邮件从 qmail 通过管道传输到一个 php 脚本。我需要标题保持完整,就像正常的转发一样,事实证明这对 PHP 来说很困难,而且有点超出我的范围。(我设法创建了一个无限的电子邮件循环)所以,我不想再试一次。

我可以尝试用我从未使用过的 perl 编写脚本,但我需要可以从 Web 界面管理计划,或者至少以用户友好的方式进行管理。

此时任何帮助或建议将不胜感激,谢谢

编辑:

好吧,因为我不能把代码放在评论里,我就在这里编辑。

现在在我的日志中得到这个:

Folder: /usr/local/bin/php /usr/home/idnani/testemail/emailtester.ph     1679
"rocmail: Executing "/usr/local/bin/php,/usr/home/idnani/testemail/emailtester.php
Could not open input file: /usr/home/idnani/testemail/emailtester.php

当我使用 with :0fw 我得到:

"rocmail: Executing "/usr/local/bin/php,/usr/home/idnani/testemail/emailtester.php
Could not open input file: /usr/home/idnani/testemail/emailtester.php
procmail: [69907] Thu Jun 16 14:04:17 2011
procmail: Program failure (1) of "/usr/local/bin/php"
procmail: Rescue of unfiltered data succeeded

编辑:想通了!

经过反复试验找到了正确的方法。

根本不要使用管道,你确实需要!前向符号:

最终规则:

:0
! `/usr/local/bin/php -f $HOME/emailtest/emailtester.php`

太简单了……我有点生气,我花了好几个小时才弄明白,感谢大家帮我指出正确的方向!

最佳答案

你是如此接近......你需要没有!转发它:

:0
|/usr/bin/php /usr/home/myname/testemail/emailtester.php

编辑 我输入了 PHP 的完整路径,以防 procmail 的 $PATH 不完整。将其更改为您实际的 php 路径。

关于php - 使用 procmail 调用 php 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6376242/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com