UbuntuにPHPとApacheでsendmailをインストールしました。次のコマンドラインを試すと、PHP sendmailはUbuntuコマンドラインで動作しますが、PHPファイルでは動作しません
php -r "mail('[email protected]', 'test', 'test')"'
が正常に送信されます。
しかし、でファイル "test_send_mail.php" を実行している:
<?php
mail('[email protected]', 'test', 'test')
?>
して電子メールを送信しません。
の.phpファイルで失敗した試行がログエントリを生成します。
`Jul 5 21:24:47 www sendmail[25603]: p661OlL7025603: from=www-data, size=106, class=0,
nrcpts = 0、MSGID = < [email protected]>、リレー= WWWデータの@ localhostの
コマンドラインで成功しようとすると、ログエントリを生成します。
Jul 5 21:22:40 www sm-mta[25533]: p661MevV025533: from=<[email protected]>,
size=352, class=0, nrcpts=1, msgid=<201107060122.p6[email protected]>,
proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
誰もが何が起こっている可能性のあるアイデアを持っていますか?ご協力ありがとうございました!
PHP 'メール()'関数は実際にはかなり限られており、風変わりです。あなたのウェブサイトへの、またはあなたのウェブサイトのユーザのために電子メールを送るつもりなら、PHPMailerのような適切なライブラリを使用するべきです。これにより、添付ファイルの取り扱いやヘッダーのサポートが向上します。 – staticsan
さあ、メールは添付ファイルなどを含む何でも送ることができます。 電子メールを送信するためのトランスポートについてもっと知っています。 PHPMailerの場合はほとんどがSMTPを使用し、メール機能はlinux sendmail programmを使用します。そして、rootユーザーのために設定されているようですが、www-dataでは設定されていないようです –