解決しました!解決策: php_cli/php.ini の sendmail_path の値も調整します。
Ubuntu 20.x で PHP 7.4 を実行しています
PHPでメールを送信するためにmsmtpをインストールしました。
問題: ブラウザから mailtest.php を実行するとうまくいきます。cronjob による mailtest.php の実行が機能しません。ログファイルにこのエラーが記録されます。
sh: 1: /usr/sbin/sendmail: not found
problem:
これが私の /etc/crontab からの行です
00 23 * * * root /usr/bin/php /var/www/mailtest.php >> /var/log/mails.log 2>&1
mailtest.php
$header = 'From: '.$mail_from. "\r\n" . 'Reply-To: '.$mail_from."\r\n" ;
if ($mailstatus = mail($mail_to, $mail_subject, $mail_body, $header)){
echo "sent";
} else {
echo "problem: ".$mailstatus;
}
おそらく何らかの許可の問題だと思います。すでに root -> www-data を変更しようとしましたが、この場合は何も起こらず、mails.log-file は空のままです。メールも送信されません。
これは私を夢中にさせています。私は何時間もグーグル検索に費やしましたが、何が起こっているのか本当に理解できません。
何か案は?詳細/確認できるものはありますか?
お時間をいただきありがとうございました!