PHP-FPM ワーカーが php.ini の読み込みを台無しにしていますか?

PHP-FPM ワーカーが php.ini の読み込みを台無しにしていますか?

Ubuntu Natty にソースから PHP 5.3.8 をインストールしました。また、構成中に FPM を有効にしました。

しかし、PHP 拡張機能のインストールで問題が発生しています。拡張機能を php.ini ファイル (例extension=apc.so) に追加し、PHP (つまり/etc/init.d/php-fpm restart) を再起動すると、次のようなエラーが発生します。

Starting php-fpm PHP Warning:  Module 'apc' already loaded in Unknown on line 0
<br />
<b>Warning</b>:  Module 'apc' already loaded in <b>Unknown</b> on line <b>0</b><br />
PHP Warning:  Module 'geoip' already loaded in Unknown on line 0
<br />
<b>Warning</b>:  Module 'geoip' already loaded in <b>Unknown</b> on line <b>0</b><br />
PHP Warning:  Module 'imagick' already loaded in Unknown on line 0
<br />
<b>Warning</b>:  Module 'imagick' already loaded in <b>Unknown</b> on line <b>0</b><br />
PHP Warning:  Module 'memcache' already loaded in Unknown on line 0
<br />

私の PHP-FPM conf には という設定があるpm.start_servers = 5ため、約 5 つの PHP-FPM ワーカーがアクティブになっています。PHP を再起動すると、それらはすべて php.ini ファイルを読み込もうとしているのでしょうか (そのため、モジュールがすでに読み込まれているというメッセージが表示されます)?! そうである場合、Zend Loader をロードするときにエラーが致命的になるため、エラーを停止する方法はありますか?

前もって感謝します。

答え1

以前、StackOverflow でこの問題を解決しました。情報へのリンクはこちらです。

各 PHP-FPM ワーカーは php.ini を個別に読み込みますか?

乾杯。

答え2

次のコマンドは、使用されている .ini ファイルを表示します。

ubuntu@server:~$ php --ini
Configuration File (php.ini) Path: /usr/local/etc
Loaded Configuration File:         /usr/local/etc/php-cli.ini
Scan for additional .ini files in: /usr/local/etc/php
Additional .ini files parsed:      /usr/local/etc/php/apc.ini,
/usr/local/etc/php/memcache.ini,
/usr/local/etc/php/xhprof.ini

これはトラブルシューティングに役立ちます。

ほとんどの場合、php.ini直接編集するのではなく、追加の .ini ファイルをディレクトリ (/usr/local/etc/php私の例の場合) に配置して構成を上書き/拡張します。

./configureこれが設定されていない/利用できない場合は、コマンドを調整して を含める必要があります--with-config-file-scan-dir

ちなみに、ドットデブあなたにとってより良い選択肢かもしれません。

関連情報