• The BIND DNS server has already been deprecated and removed from Plesk for Windows.
    If a Plesk for Windows server is still using BIND, the upgrade to Plesk Obsidian 18.0.70 will be unavailable until the administrator switches the DNS server to Microsoft DNS. We strongly recommend transitioning to Microsoft DNS within the next 6 weeks, before the Plesk 18.0.70 release.
  • The Horde component is removed from Plesk Installer. We recommend switching to another webmail software supported in Plesk.

Resolved PHP-socket not listening for 1 site

mr-wolf

Silver Pleskian
Plesk Guru
Plesk 17.0.17
Ubuntu 16.04.2 LTS

After the CPU of my machine skyrocketed (seen by Zabbix) I was barely able to login using SSH and when I was logged in I was unable to type any commands.
Strangely enough I was still able to access an important website of that server. Maybe this was due to 1 core being saturated?
I decided to give this machine a (remote) reset.

After the machine came back, it was running normally except for that important site.
It was a PHP-connection problem.
A "netstat -an | grep php" revealed that there was no process listening on that dedicated (site) socket.

I did a Plesk repair web, but this didn't make a difference
The socket existed in the website's user space.
I removed it and switched PHP handlers back and forth and the site started to work.

Am I right in thinking that unix socket wasn't working because it already existed and could not be created and therefore the process failed to startup?
If that's correct then shouldn't the system be changed so it becomes more robust by removing that socket automatically?
Can I get some more info as to which config files are involved to start that PHP-process?
 
Hi mr-wolf,

first, pls. be aware, that your issue is not related to Plesk or it's components.

Your root cause is based on your incorrect restart of your server - instead you choosed a "reset", which only should be done, if your server is no longer communicating at all.
A "reset" doesn't necessarily delete current PID - files and you will experience issues/errors/problems as described, because a current PID as for example "/var/run/php/plesk-php71-fpm.pid" can be still existent and a restart of the corresponding service should be done, in order to get a new PID. Pls. always use the "REBOOT" command if possible and avoid hardware and software resets!

The current corresponding socket and the PID will be removed as expected, when you reboot your server, or when you shutdown the corresponding service with the example command: service plesk-php71-fpm stop
The corresponding PHP-FPM - configuration file "php-fpm.conf" can be found for each Plesk - PHP version at "/opt/plesk/php/X.X/etc" ( where "X.X" should be replaced with the Plesk PHP - version )
 
Thanks for your info...

I really had no other possibility than this "remote reset". I was unable to get on the console although I was able to login. I waited 5 minutes and was under time-pressure. I was pretty amazed by this still responding website. I also tried a remote serial console, but this didn't give me any real access to the console. It was therefore not possible to issue a "reboot"

I found the config in /opt/plesk/php/5.6/etc/php-fpm.d/ I don't know if it was there while the site was not working.
I do know that a "/etc/init.d/php7.0-fpm restart" didn't solve it.
The config file created is that of the moment I solved it by switching PHP-versions.

I would expect a "plesk web repair" to recreate this config file.
As I don't know if that config was missing I can't tell really if it did or didn't.

I have more to check now if it happens to me again.
Never did before.

Thanks again.
 
Hi mr-wolf,

I would expect a "plesk web repair" to recreate this config file.
This config file ( example: "/opt/plesk/php/5.6/etc/php-fpm.d/YOUR-DOMAIN.COM.conf" ) is a (sub)domain specific configuration file, based on your current PHP-handler setup for that (sub)domain. It doesn't have to be "repaired", once it is created.
If you choosed the Plesk-PHP handler "5.6", you certainly would call "service plesk-php56-fpm stop" / "service plesk-php56-fpm start" or "service plesk-php56-fpm restart" in order to restart the corresponding service ( or call "/etc/init.d/plesk-php56-fpm COMMAND" ), which will as well delete the current socket and the pid - file and ( when starting ) create the new ones.

The command "/etc/init.d/php7.0-fpm restart" is the corresponding VENDOR PHP handler - command, not related to Plesk - PHP - versions or corresponding services. ;)
 
The command "/etc/init.d/php7.0-fpm restart" is the corresponding VENDOR PHP handler - command, not related to Plesk - PHP - versions or corresponding services. ;)
Of course it is...
In my haste I never saw these:
Code:
/etc/init.d/plesk-php54-fpm
/etc/init.d/plesk-php55-fpm
/etc/init.d/plesk-php71-fpm
/etc/init.d/plesk-php70-fpm
/etc/init.d/plesk-php56-fpm

Running /etc/init.d/plesk-php56-fpm restart would have done it. Instead I used the /etc/init.d/php7.0-fpm , which of course doesn't start these other services.
That one was the only php file in that folder.... I mistakenly thought

I bet that a graceful restart would have fixed my problem.
 
Back
Top