/ usr / bin / mail冻结,永不发送。权限?

时间:2011-04-17 18:16:09

标签: php email shell

我正在尝试通过shell发送邮件并冻结。脚本似乎很好,我真的很困惑。这是PHP:

$mail = '/usr/bin/mail -a 
    "Content-type: '.$header_content_type.';"
    -a "Reply-to: '.$header_reply_to.';"
    -a "List-Unsubscribe: '.$header_unsub.';"
    -s "'.$header_subject.'" "'.$email.'" < '.$myFile.'';
    exec($mail);

我回应了所有事情,以确保它将数据提取到变量中。当它执行时,它会冻结并且什么都不做。这可能是权限错误吗?

**编辑**

我检查了邮件日志,并在postfix main.cf中看到了virtual_alias_maps的问题 我做了必要的调整,似乎工作得很好。谢谢大家!

2 个答案:

答案 0 :(得分:1)

问题#1:

您可以从命令行执行相同的命令吗?假设代替执行命令,如果您向控制台回显$mail会发生什么。然后,复制命令,然后将其粘贴到命令提示符并按Enter键?

问题#2:

为什么你在使用mail命令而不是PHP mailing function and modules。我只是一个PHP的麻烦,但我知道你可以让PHP以独立于机器的方式发送邮件。

答案 1 :(得分:0)

尝试使用passthru()而不是exec(),以便打印输出。也许这会暴露出这个问题。

你可能有理由不使用mail(),但我想我会提到它以防万一。