• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

Issue Onyx to Obsidian - php problem

jos_v

New Pleskian
After I updated from Plesk Onyx to Obsidian, I can no longer change my self compiled PHP versions.

In panel.log I see following error. Is this a bug?

Don't know how to detect if 'php72-fpm' service is registered on CentOS 7.7.1908

Does any one know a solution to this problem?

In Plesk Onyx 17.8.11 this was working fine.
 
Which error do you see, that part is missing...

In any case, you might need to re-register your custom PHP handlers. List them first, of course, check if that is indeed so...

Plesk Documentation: php_handler: PHP Handlers
 
When I do plesk bin php_handler --list I see all the handlers. I did plesk bin php_handler --reread and received the message:
The information about PHP handlers was successfully updated.

But still I cannot change my PHP version. The full error message in panel.log is:

stderr:
Don't know how to detect if 'php56-fpm' service is registered on CentOS 7.7.1908

[03-Nov-2019 21:08:48 Europe/Berlin] PHP Fatal error: Uncaught PleskUtilException: phpinimng failed: Don't know how to detect if 'php56-fpm' service is registered on CentOS 7.7.1908 in /usr/local/psa/admin/plib/Service/Agent.php:210
Stack trace:
#0 /usr/local/psa/admin/plib/PHosting/Apache.php(611): Service_Agent->execAndGetResponse('phpinimng', Array)
#1 /usr/local/psa/admin/plib/PHosting/Apache.php(579): PHosting_Apache->deletePhpFpmConfiguration('jos-testdomain2...', Array)
#2 [internal function]: PHosting_Apache->restartPhpFpmBatch()
#3 {main}
thrown in /usr/local/psa/admin/plib/Service/Agent.php on line 21
 
This might be a bug.

Can you please also post the list of the registered PHP handlers?
 
plesk bin php_handler --list
id: display name: full version: version: type: cgi-bin: php-cli: php.ini: custom: status:
cgi 5.4.16 by OS vendor 7.2.9 7.2 cgi /usr/bin/php-cgi /usr/bin/php /etc/php.ini false disabled
fastcgi 5.4.16 by OS vendor 7.2.9 7.2 fastcgi /usr/bin/php-cgi /usr/bin/php /etc/php.ini false disabled
fastcgi52 5.2.17 5.2.17 5.2 fastcgi /usr/local/php5/bin/php-cgi /usr/local/php5/bin/php /usr/local/php5/lib/php.ini true enabled
fastcgi53 5.3.29 5.3.29 5.3 fastcgi /usr/local/php53/bin/php-cgi /usr/local/php53/bin/php /usr/local/php53/lib/php.ini true enabled
fpm 5.4.16 by OS vendor 7.2.9 7.2 fpm /usr/sbin/php-fpm /usr/bin/php /etc/php.ini false disabled
module 5.4.16 by OS vendor 7.2.9 7.2 module /usr/bin/php-cgi /usr/bin/php /etc/php.ini false disabled
php53-fpm 5.3.29 5.3.29 5.3 fpm /usr/local/php53/sbin/php-fpm /usr/local/php53/bin/php /usr/local/php53/lib/php.ini true enabled
php55-fpm 5.5.38 5.5.38 5.5 fpm /usr/local/php55/sbin/php-fpm /usr/local/php55/bin/php /usr/local/php55/lib/php.ini true enabled
php56-fpm 5.6.37 5.6.37 5.6 fpm /usr/local/php56/sbin/php-fpm /usr/local/php56/bin/php /usr/local/php56/lib/php.ini true enabled
php70-fpm 7.0.31 7.0.31 7.0 fpm /usr/local/php70/sbin/php-fpm /usr/local/php70/bin/php /usr/local/php70/lib/php.ini true enabled
php71-fpm 7.1.21 7.1.21 7.1 fpm /usr/local/php71/sbin/php-fpm /usr/local/php71/bin/php /usr/local/php71/lib/php.ini true enabled
php72-fpm 7.2.9 7.2.9 7.2 fpm /usr/local/php72/sbin/php-fpm /usr/local/php72/bin/php /usr/local/php72/lib/php.ini true enabled
plesk-php73-cgi 7.3.11 7.3.11 7.3 cgi /opt/plesk/php/7.3/bin/php-cgi /opt/plesk/php/7.3/bin/php /opt/plesk/php/7.3/etc/php.ini true disabled
plesk-php73-fastcgi 7.3.11 7.3.11 7.3 fastcgi /opt/plesk/php/7.3/bin/php-cgi /opt/plesk/php/7.3/bin/php /opt/plesk/php/7.3/etc/php.ini true enabled
plesk-php73-fpm 7.3.11 7.3.11 7 .3 fpm /opt/plesk/php/7.3/sbin/php-fpm /opt/plesk/php/7.3/bin/php /opt/plesk/php/7.3/etc/php.ini true enabled
 
Hello,

It seems Plesk cannot operate with custom fpm service. Do you have an systemd units or sysvinit scripts or something else for it ?
 
I use systemd scripts to stop and start php-fpm daemons. This works when I manually change a php-fpm version.

For instance when I move domain.conf from /usr/local/php56/etc/php-fpm.d to /usr/local/php72/etc/php-fpm.d. And then I do systemctl restart php56-fpm.service and systemctl restart php72-fpm.service, the php version for the domain changes from 5.6 to 7.2.

But when I change the php version in Plesk GUI or via cli I get the above mentioned error.
 
Hello,

Do you have set systemd unit names, when php handler has been registered ? You can check service names in plesk sbin php_handlers_control --list-json
 
Yes I did for all php versions. Below I pasted the output for php 7.2

{"php":[
{
"id":"php72-fpm",
"path":"/usr/local/php72/sbin/php-fpm",
"clipath":"/usr/local/php72/bin/php",
"phpini":"/usr/local/php72/lib/php.ini",
"version":"7.2.24",
"displayname":"7.2.24",
"type":"fpm",
"system":false,
"service":"php72-fpm",
"poold":"/usr/local/php72/etc/php-fpm.d"
},
 
Hi Jos_v,

Did you get any direct response from Plesk? Because I'm pretty much running into the exact same bug as you.

Cheers,
Wiel
 
Back
Top