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

blueseeds @ skysnow.jp blueseeds @ skysnow.jp
2010年 4月 21日 (水) 18:31:57 JST


ナカジマです。

>大垣さん
今、mail関数のソースコード見ました。
おっしゃるとおり、popenですね。


>中出さん
ソケットのチェックは不要みたいです。
すみません。


----
On Wed, 21 Apr 2010 18:23:14 +0900
Yasuo Ohgaki <yohgaki @ ohgaki.net> wrote:

> 大垣です。
> 
> 加藤さんも指摘されている通り、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などが原因のような気がします。


-- 
ナカジマ
 <blueseeds @ skysnow.jp>



PHP-users メーリングリストの案内