[PHP-users 35144] Re: phpのmail関数がたまにfalseを返す
Yasuo Ohgaki
yohgaki @ ohgaki.net
2010年 4月 21日 (水) 18:23:14 JST
大垣です。
加藤さんも指摘されている通り、UNIXなのでソケットは関係ありません。
popenでsendmailコマンドを実行します。
ext/standard/mail.c のphp_mailを読めばfailになる条件はいろいろあるのですが、
pclose()で0以外が返ってきていることが分かります。この場合、PHPのエラーは
発生しません。(PHP 5.2のソースを見ました)
LinuxでなくOSXのpcloseのmanページだと
The pclose() function waits for the associated process to
terminate; it returns the exit
status of the command, as returned by wait4(2).
wait4のエラーを知ってもあまり意味がないと思うので、sendmailコマンドが
失敗する原因を考えた方が良いと思います。
当てずっぽうですがulimitなどが原因のような気がします。
--
Yasuo Ohgaki
yohgaki @ ohgaki.net
PHP-users メーリングリストの案内