0

一部のサービスが終了した後にメールを送信したいので、php exec() 関数を使用してそれを実行しています

私が使用するコマンドは次のとおりです。exec('(other service commands; /usr/bin/php /var/www/vhosts/domain.com/httpdocs/email.php name@domain.com) > /dev/null &');

email.php には、mysql の更新と mail() 関数が含まれています。mysql の更新が行われているため、うまく機能しているようですが、メールは送信されません。

php exec() 経由ではなく CLI 経由でコマンドを実行すると、メールは正しく送信されます。
例えば。/usr/bin/php /var/www/vhosts/domain.com/httpdocs/email.php receiver@domain.com

それを修正するために設定する必要があるものは他にありますか?

4

1 に答える 1

0

ついに手に入れました!

どうやら、sendmail_pathCLI の php.ini ( /etc/php5/cli/php.ini) はコメントアウトされていたようです。

コメントを外し、値を に設定し/usr/sbin/sendmail -t -i、Apache を再起動したところ、正常に動作するようになりました。

于 2012-04-05T13:55:45.307 に答える