2010年4月21日

[PHP-users 35152] Re:phpのmail関数がたまにfalseを返す

ナカジマです。


原因究明の助けになるかどうかはわかりませんが。

まずどこに原因があるのかおおよその目処を付けるために
処理の担当を切り分けて実行テストしてみることから始めてみてはでしょう?

・phpのmail()関数の挙動に問題があるのか、
・popen()の挙動に問題があるのか、
・sendmailコマンドの振る舞いに問題があるのか、

こういう場合は、問題が発生している可能性のある箇所を切り分けて
消去法で原因を追及していくのがわかりやすいと思います。


php側に問題があるのか、それ以外に問題があるかどうかは、例えば
同じようなループ処理として、
(1) shellスクリプトでsendmailコマンドをコールする処理
(2) C言語でpopenを利用してsendmailを実行する処理
の2種類のスクリプトを用意して、それぞれの実行結果を試してみるのもよいかもしれません。

その際、標準出力でもファイルにでもいいのでデバッグしやすいように
適切なところにログ出力処理だけ突っ込んでおくと後々チェックがしやすいかも。

何はともあれ、その際には
On Wed, 21 Apr 2010 18:22:17 +0900
"blueseeds@xxxxx" <blueseeds@xxxxx> wrote:

> ・sendmailプロセスのモニタリング
> /var/log/mail の監視(tail -f /var/log/mail でやると便利です)
> /var/spool/mailの監視(tail -f /var/spool/mail)
> ・サーバ稼働状況のモニタリング
> (topコマンドやvmstatコマンド、psコマンドなど)
>
> を同時にチェックしてみると何かわかるかもしれませんよ。
はやってみてください。それで原因がはっきりする保証はありませんが、
プロセスの挙動を見ていくことで原因究明の取っかかりは見つかるかもしれません。


--
ナカジマ
<blueseeds@xxxxx>

_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3


投稿者 xml-rpc : 2010年4月21日 23:39
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/95285
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。