
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
答え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
。
ちなみに、ドットデブあなたにとってより良い選択肢かもしれません。