Switching PHP versions in HestiaCP retains old FPM socket names and configuration (PHP-FPM mismatch)

Hi everyone,

I’d like to report a confusing behavior I encountered when switching PHP versions through the HestiaCP control panel. This happens both when switching from PHP 8.3 to 8.4 and vice versa.


:white_check_mark: Scenario:

  • I have HestiaCP installed with both PHP 8.3 and 8.4 available.
  • I changed the PHP version for a domain from 8.3 to 8.4 via the web interface.
  • After the change, I noticed that the FPM socket created in /run/php/ still used the name of the previous version, for example:
php8.3-fpm-domain.sock
  • However, the active process on the system was clearly from PHP 8.4:
php-fpm: master process (/etc/php/8.4/fpm/php-fpm.conf)

So, even though the panel indicated that PHP 8.4 was selected, and the PHP-FPM master process confirmed it, the socket name still reflected PHP 8.3 — and the reverse is also true when switching from 8.4 to 8.3.


1 Like