Exim
Exim - 為除一位使用者外的所有外發電子郵件添加頁腳
我目前正在管理由 Exim 4.85 處理的電子郵件伺服器。該伺服器目前為所有外發郵件添加頁腳。可以在幾個指南中找到添加此功能的行:
transport_filter=/usr/bin/altermime --input=- --disclaimer=/etc/exim_footer --disclaimer-html=/etc/exim_footer_html
但是,現在有必要將某些外發電子郵件保持原樣。優點是必須為單個電子郵件地址(即 )完成此操作
bob@example.com
,並且所有這些電子郵件都將是純文字的(即沒有 HTML)。例子:
alice@example.com sends email ===> exim adds footer ===> delivered bob@example.com sends email =========================> delivered
我想我可以利用字元串擴展功能並
altermime
為此使用空白文件,但到目前為止它一直是一場噩夢。我基本上得到了Expansion of [...] failed: condition name expected, but found ""
和
transport filter process failed (127): unable to execute command
困擾我的是,通過
exim -bem
命令測試擴展會返回所需的輸出。這些只是我失敗的嘗試中的一小部分:
transport_filter=/usr/bin/altermime --input=- --disclaimer='${if eq {$sender_address}{bob@example.com}{/etc/exim_footer}{/etc/empty_file}}' transport_filter=/usr/bin/altermime --input=- --disclaimer=${if eq {$sender_address}{bob@example.com}{/etc/empty_file}{/etc/exim_footer}} --disclaimer-html=/etc/exim_footer_html transport_filter={${if eq {$sender_address}{bob@example.com}{/etc/empty_file}{/usr/bin/altermime --input=- --disclaimer=/etc/exim_footer --disclaimer-html=/etc/exim_footer_html}}}
關於如何做到這一點的任何想法?
將您的 transport_filter 設置為 bash/python/.. 腳本
transport_filter = /scripts/exim_add_signature.sh $sender_address
有關 transport_filter 的文件,請參閱http://www.exim.org/exim-html-current/doc/html/spec_html/ch-generic_options_for_transports.html。
在腳本中執行以下操作(虛擬碼):
no_signature_mails = ["bob@example.com"] if (argv[1] isnotin no_signature_mails) /usr/bin/altermime --input=- --disclaimer=/etc/exim_footer --disclaimer-html=/etc/exim_footer_html