[PHP-users 34662] Re: php.ini がopenされているのに読み込まれない

大瀧 保広 y.ohtaki @ mx.ibaraki.ac.jp
2009年 7月 23日 (木) 11:34:09 JST


こんにちは、大瀧です.

表題の件ですが、ちょっと進展しました。

その後、実稼動環境とは別の場所で
状況が再現できる環境が手に入ったので、
原因の切り分けをじっくりと行うことができました。

その結果,virtualhostの設定数がある一定数を超えると
この症状が発生することがわかりました。

システムコールのトレース結果をみると、
症状が出ない(php.iniが読み込めている)ときには、
	open("/usr/local/apache2/php/php.ini", O_RDONLY) 
で返っているファイルディスクリプタは 254以下、
読み込まないときには,256以上が返っています。

ファイルディスクリプタの値が256以上であっても、
他のファイルの読み込みは問題なく行われていますので、
php.ini を読み込む周辺のコードが怪しそうです。

以上、経過報告でした。

On 2009/07/09, at 13:21, 大瀧 保広 wrote:

> こんにちは、大瀧と申します.
>
> Solaris 10 (i386) + Apache 2.0.63 + PHP5.2.10 な環境で
> バーチャルホスティングサービスを提供しています。
> mod_php のときだけ php.ini が読み込まれないという現象が起きており、
> 修正の糸口が見つけられず、困っています。
>
>
> 以下、確認したことです。
>
> php の configure command 
>
> './configure' '--with-apxs2=/usr/local/apache2/bin/apxs' '--enable-zend-multibyte' '--enable-mbstring=shared' 
> '--enable-mbregex' '--with-libxml-dir=/opt/csw' '--with-iconv-dir=/opt/csw/lib' '--with-gd' '--with-jpeg-dir=shared' 
> '--with-zlib-dir=shared' '--with-config-file-path=/usr/local/apache2/php'
>
> CLI版のphpで php -i した場合
> 	Configuration File (php.ini) Path => /usr/local/apache2/php
> 	Loaded Configuration File => /usr/local/apache2/php/php.ini
>
> mod_phpのほうでphpinfo() を表示させると
> 	Configuration File (php.ini) Path /usr/local/apache2/php 
> 	Loaded Configuration File (none)
>
> apache (httpd)に対してtruss コマンドでシステムコールをトレースしてみると、
>
> open("./php-apache2handler.ini", O_RDONLY)      Err#2 ENOENT
> open("/usr/local/apache2/php/php-apache2handler.ini", O_RDONLY)                     Err#2 ENOENT
> open("./php.ini", O_RDONLY)                     Err#2 ENOENT
> open("/usr/local/apache2/php/php.ini", O_RDONLY) = 533
> close(533)                                      = 0
> ...
>
> となっており、ファイルディスクリプタが取得できているにもかかわらず、
> 一度もreadしないまま、closeしていることがわかります。
>
>
> このような現象が起きる原因として、何が考えられるでしょうか?
>
> よろしくお願い致します.
>
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3

_______________________________
茨城大学 学術情報局 IT基盤センター
大瀧 保広    y.ohtaki @ mx.ibaraki.ac.jp
0294-38-5292 / 5148 / 5014 (Fax: 5158)






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