新しいFPMプール(設定ファイルwww.conf
をpool.d
に設定)を設定しましたが、その特定のプールに対してmysqlサポートを無効にしたいとします。または、そのプールの拡張機能をロードする方法がでない場合は、ですか?php-fpm:特定のプールのPHP拡張機能を無効にする
私はDebianの9を使用して、ここでファイル構造は次のようになります方法ですよ:
/etc/php/7.0/fpm$ tree
.
├── conf.d
│ ├── 10-mysqlnd.ini -> /etc/php/7.0/mods-available/mysqlnd.ini
│ ├── 10-opcache.ini -> /etc/php/7.0/mods-available/opcache.ini
│ ├── 10-pdo.ini -> /etc/php/7.0/mods-available/pdo.ini
│ ├── 20-calendar.ini -> /etc/php/7.0/mods-available/calendar.ini
│ ├── 20-ctype.ini -> /etc/php/7.0/mods-available/ctype.ini.ini
(...)
├── php-fpm.conf
├── php.ini
└── pool.d
├── forgewww.conf
└── www.conf
extension=thing.so
ファイルconf.d/<extension>.ini
で見つけることができます。ない
php_admin_value[extension] = mysqli.so
:問題は、私はまた、その後にwww.conf
に行を追加phpdismod
でグローバルにMySQL拡張機能を無効にしようとした
...一度設定されたすべてのこれらの拡張子は、すべてのプールに共通するようです(上記はプールにmysqliを有効にしません)
不可能ではないにしても、無効にすることは困難です。デフォルトのiniでは、それを可能にする 'extension = mysql [something]'という行があります。プールが独自のiniをロードする場合、その行を削除/コメントすることができます。 – Jakumi
ありがとうございますが、拡張機能は少なくともdebianではロードされていないようです。私は他のトリック(私の編集を参照してください)を試みたが、それ以上の成功はありません。 –
拡張子をプール単位で無効にすることはできません。別のソケットを使用して、完全に別々の 'php-fpm'を起動しなければなりません。これにより、必要な拡張機能が有効/無効になります。 – Mjh