[PHP-users 30481] Re: session_start()から先に進まない

Reiji Matsumoto matsumoto @ spline.oc.to
2006年 10月 9日 (月) 21:52:06 JST


松本と申します。

>session_start()を呼んだ個所で先へ進まなくなる、という現象が起きています。

直接の解答にはならないかも知れませんが、どのような状況で上記の現象が発生
するか考えてみました。

まず第一にsession_start()するスクリプトがなんらかの事情で長時間終了しな
かった場合に、同一セッションIDでアクセスすると同様の症状が発生すると思
います。
この理由はsession_start()はセッションファイルをLOCK_EXでロックしますが、
ロックが解除されるのはスクリプトの終了時だからです。
この場合はapacheを再起動すれば一時的に症状が無くなると思いますが、根本的
には長時間スクリプトが終了しない事が問題だと思います。

第二に、セッションファイルを設置するデバイスの可用性に問題がある場合に
このような症状になるかも知れません。例えば/tmpがNSFサーバーを利用して
いて、NFSサーバーとの間に設置されているHUBが故障していて、アクセスしに
くくなっている場合等です。

如何でしょうか?




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