Some PHP directives not applied from PHP-FPM

SYSTEM INFORMATION
OS type and version Debian 13
Virtualmin version 8.0.1

I’m having an issue with some PHP directives that do not seem to work when defined inside the domain pool configuration:
php_admin_value[xdebug.mode] = profile or php_value[xdebug.mode] = profile
These directives are not applied when set in the pool file.

However, if I edit:
/etc/php/*/fpm/conf.d/20-xdebug.ini
there, everything works correctly.

I initially noticed this behavior while testing Xdebug (xdebug.mode), but I’m not sure if this is specific to Xdebug or if other directives behave the same way. I haven’t tested all possible directives yet.

My questions:

  1. Are there certain PHP directives that cannot be overridden from pool configuration (pool.d)?
  2. Is there a documented limitation regarding which directives are allowed in php_admin_value / php_value?
  3. What is the recommended way to manage per-domain PHP directives in a multi-domain setup without editing global conf.d files each time?
  4. Is there a cleaner way to handle this from a hosting panel (so changes survive updates and remain manageable)?

I would prefer to manage per-domain PHP settings without modifying global .ini files manually, especially on servers with multiple virtual hosts.

Xdebug’s xdebug.mode is a special case, and even Xdebug’s own docs state that xdebug.mode can only be set at PHP process start (php.ini or conf.d ini files) and cannot be set via php_admin_value in Apache vhosts or PHP-FPM pools.

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.