Postfix sendmail适用于CL,但不适用于使用Office365的PHP

时间:2013-10-24 07:25:29

标签: postfix-mta office365

我一直在尝试将Office365 SMTP中继用于运行postfix的Web服务器。我需要能够将Office365域中的邮件发送到域中的其他地址,因此我认为端口25匿名SMTP不会起作用。

如果我跑

echo "testing" | sendmail -fuser@mydomain.com me@mydomain.com

然后消息通过(假设用户在sasl_passwd中列出)

但是,如果我运行一个简单的PHP脚本,如:

<?php
$to = "me@mydomain.com";
$subject = "Test";
$message = "test from PHP";
$from = "user@mydomain.com";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
?>

然后通过

退回交付
550 5.7.1 Client does not have permissions to send as this sender

我已经读过空的from =&lt;&gt;值(我可以在日志中看到)是问题的原因,但我不明白如何从postfix设置更改为任何内容。如果命令行有效,我是否正确理解后缀中继设置是否正确?我缺少PHP配置的其他步骤吗?

从查看日志文件看,每次运行PHP脚本时都会生成两条消息。一个有正确的发件人地址,另一个是空的。

如果您需要任何其他信息,请与我们联系。提前谢谢。

-Seth

1 个答案:

答案 0 :(得分:0)

感谢这个人(也回答他们自己的问题):

https://serverfault.com/questions/147921/forcing-the-from-address-when-postfix-relays-over-smtp/152126#152126

我只是将其发布给可能偶然发现我的问题的其他人。