【问题标题】:Procmail: Forwarding email dynamicallyProcmail:动态转发电子邮件
【发布时间】:2013-10-01 11:58:27
【问题描述】:

我想使用 procmail 将所有收到的电子邮件转发到一个电子邮件地址。通常我会这样做:

:0
! email@domain.com

但是:在这种情况下,我不知道接收者。相反,接收者是通过 PHP 脚本根据传入的电子邮件内容计算出来的。

所以我需要这样的东西:

:0c
| /usr/bin/php /var/www/calculatereceiver.php   <== The output of this script is the $RECEIVER address

:0
! $RECEIVER 

当然上面的代码是行不通的。我的问题是:如何管理 procmail 将邮件转发到第一个脚本的输出?

最好的问候,

斯文

【问题讨论】:

    标签: php email forward procmail


    【解决方案1】:

    Procmail:程序/脚本输出到变量(STDIN 上的电子邮件)

    尝试以下方法:

    RECEIVER=`/usr/bin/php /var/www/calculatereceiver.php`
    
    :0
    ! $RECEIVER 
    

    更安全的版本可能不适用于所有类似的 sendmail:

    RECEIVER=`/usr/bin/php /var/www/calculatereceiver.php`
    
    :0
    ! -- $RECEIVER
    

    文档参考

    man procmailrc

    由 procmail 启动的反引号中的任何程序都会将整个邮件放在其标准输入中

    【讨论】:

    • 非常感谢,但是在这种情况下,php 脚本将不会接收作为标准输入的原始邮件,它需要计算接收者...?
    • 文档(man procmailrc)另有说明。我已将相关引用附加到答案中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多