PHP Version 5.3.28 で作成したプログラムが環境によって挙動がおかしい。
PHPからの応答が無くなってしまうようだ。
ソースのN行目でエラー!のようなエラーが発生するわけでもなく、応答がなくなってしまう&Debuggerが使えない環境なので、コツコツとログを入れておかしい箇所を調べてみた。すると、

$adr = $_SERVER["REMOTE_ADDR"];

の箇所で応答がなくなる。
単に$_SERVERを読み取ろうとしている箇所で停止するようだ。

このロジック、別のリクエストの時にも実行されるが、その時は別に問題なく読み取れる。
また、違うサーバーでは同じロジック、同じリクエスト時にも問題がない。
PHPが停止してしまうのは1つのサーバーだけだ。

もっと調べてみると、このサーバーだけ、PHPのバージョンが異なり、eAccelerator Version 0.9.6.1が動作している。


試しに、eAccelerator をdisableにしてみたところ、$_SERVERを読み取りでPHPが停止する問題は解消された。

/etc/php.d/eaccelerator.ini

eaccelerator.enable="0"

今回のリクエスト・このアクセスの場合、eAcceleratorがたまたま$_SERVERアクセスで不正終了してしまうのだろうか。


根本原因は不明だが、とりあえずeAccelerator をOFFで実行しよう。
そのうち、Zend OPcacheとかも検討してみよう。