postfix を実行している Web サーバーに Office365 SMTP リレーを使用しようとしています。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=<> 値 (ログで確認できます) が問題の原因であることを読みましたが、それを postfix 設定から何かに変更する方法がわかりません。コマンドラインが機能する場合、後置リレー設定が正しいことを正しく理解していますか? 不足している PHP 構成の他の手順はありますか?
ログ ファイルを見ると、PHP スクリプトが実行されるたびに 2 つのメッセージが生成されているように見えます。1 つは送信元アドレスが正しく、もう 1 つは空です。
他に情報が必要な場合はお知らせください。前もって感謝します。
-セス