【问题标题】:Exim & WHM - Run PHP Script on mail rejectionExim & WHM - 在邮件拒绝时运行 PHP 脚本
【发布时间】:2017-01-21 20:52:12
【问题描述】:

我写了一个脚本来拒绝电子邮件,如果他们有包含 exe、js 文件等的 zip 附件。它成功地工作了。我在 WHM Exim 高级编辑器的 acl_smtp_mime 下编写了以下脚本:

deny message = "This message might contain harmful files."
condition = ${if match{$mime_filename}{\N(?i)\.zip$\N}}
decode = default
condition = ${if match{${run{/usr/bin/unzip -l $mime_decoded_filename}}} {\N(?i)\.(com|js|pif|scr|lnk|exe)\n\N} }

我正在尝试执行一个 PHP 脚本,该脚本在数据库中插入有关被拒绝电子邮件的日志条目,但我失败了。

我尝试在末尾插入此行,但无法运行脚本

continue = ${run{/usr/bin/php '/home/*hidden*/public_html/test.php $mime_decoded_filename'}{0}{1}}

当我从浏览器运行 PHP 只是为了测试时,它运行良好并创建了一个假日志。看来我没有从 EXIM 正确调用脚本。电子邮件被成功拒绝,但 PHP 文件没有被调用

请帮忙。谢谢

【问题讨论】:

    标签: php execute whm exim


    【解决方案1】:

    我认为 exim 不知道如何执行 .php 脚本。您可以尝试将该 php 脚本移植到 perl。默认情况下,cPanel/WHM 服务器上的 Exim 能够运行 perl 脚本。您可能想阅读有关 php 脚本的 exim 文档...

    【讨论】:

      【解决方案2】:

      我能够使用 curl 运行我的 php 脚本:

      continue = ${run{/usr/bin/curl http://www.*****.com/test.php?fn=$mime_filename&sa=$sender_address&rf=$recipients}}
      

      【讨论】:

        猜你喜欢
        • 2011-09-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-06
        • 2012-05-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多