
こんにちは。
CentOSでcronの設定をしました。
*/2 * * * * /usr/local/bin/php -f /usr/mail.php 1> /usr/log.txt
上記でmail.phpは2分置きに実行されていますが、
mail.php内のmb_send_mail関数がどうしても実行されません。
(ログよりmail.phpは実行されています。
print出力により確認)
コマンドから直接
php /usr/mail.phpで実行するとメールは送信されます。
Centos 6.3
php 5.3.3
Cronでphpのmb_send_mailを実行する際には何か設定がいるのでしょうか。
アドバイス等ありましたら、よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
crontabの中で実行した場合と動作がことなったり、動かなかったりする場合は、環境変数の違いが原因のことが多いです。
rootで実行してるのでしたら(/usrの直下にファイルが書けてるのでたぶんそうですね?)
cron内で
* * * * * env > /root/env.txt
とでもしてみて環境変数を確認してみてください。
環境変数はcrontabの中でも設定できますので、crontabの中でたとえばLANGを設定するのでしたら、
LANG=ja_JP.UTF-8
と直に書けば設定されます。
No.1
- 回答日時:
/usr/local/binに配置したphpコマンドはどうインストールしたのだろうか。
たぶんコマンドから直接
php /usr/mail.php
した時はCentOS6のmainパッケージの/usr/bin/phpが動いているんじゃないかと思う。
cronの設定と同じようにコマンドから直接
/usr/local/bin/php /usr/mail.php
してみるとどうなるだろうか。
落ち着いて問題の切り分けを行おう。
mb_send_mail関数が失敗しているのか、mb_send_mailは成功しているがメール送信に失敗しているのか。
まずはmb_send_mail関数の返り値(bool)を確認。これがfalseならそこで失敗している。
Fatal error: Call to undefined function mb_send_mailなどと表示されたら/usr/local/bin/phpからmb_string拡張が参照できない状態になっている。
それとメールスプールに失敗メールが溜まっていないか確認すると良い。
CentOS6標準のPostfixを使っているのであれば
postqueue -p
で確認できる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スクリプトのエラー「unexpecte...
-
bashでシングルクォート内の変...
-
シェルスクリプト実行で”そのよ...
-
Linux 月を英語表示したい
-
crontabでsql/plusの起動
-
ldapaddコマンドでエラー
-
UNIXのbashエラーでnot a valid
-
Linuxでシェルスクリプトがフル...
-
cronでifconfigコマンドを使用...
-
Homebrewをインストールしたの...
-
JAVAの環境変数が初期化されて...
-
cron(javaプログラム)からroot...
-
エクセルの表にヘンな枠が・・・
-
TOPコマンドで表示するCPU使用...
-
ファイル名についている「-」と...
-
pingは正常なのにtracerouteで...
-
UNIX コマンドにおける # や円...
-
IPアドレスだとPingが通るのに...
-
PowerShellのスクリプト実行に...
-
if [ "$PS1" ]の意味を教えてく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スクリプトのエラー「unexpecte...
-
bashでシングルクォート内の変...
-
シェルスクリプト実行で”そのよ...
-
crontabでsql/plusの起動
-
Linuxでシェルスクリプトがフル...
-
Linux 月を英語表示したい
-
apachectl start command not f...
-
Linuxで自作バッチファイルの置...
-
bad interpreterで、シェルが使...
-
CygwinでX Windiws Systemが起...
-
crontabでjavaだけが上手く動い...
-
Cronジョブの終了時刻を簡単に...
-
自動パスワード入力でscpするス...
-
hp-uxで時間(時計)を合...
-
UNIXのbashエラーでnot a valid
-
Cシェルのかっこいいプロンプト...
-
sudoでNOPASSWDとしてもパスワ...
-
cronの@rebootでのdateコマンド...
-
ldapaddコマンドでエラー
-
シェルスクリプトで$RANDOMの値...
おすすめ情報