I get on server this errors (CentOs 7):

[proxy:debug] proxy_util.c(2209): [client] AH00944: connecting fcgi:// to
[proxy:debug] proxy_util.c(2246): [client] AH02545: fcgi: has determined UDS as /tmp/php56-fpm.sock
[proxy:debug] proxy_util.c(2418): [client] AH00947: connected /data/webs/dev/index.php to httpd-UDS:0
[proxy:error] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /tmp/php56-fpm.sock (*) failed
[proxy_fcgi:error] AH01079: failed to make connection to backend: httpd-UDS
[proxy:debug] proxy_util.c(2171): AH00943: FCGI: has released connection for (*)

Socket Exists, i'm tried change permissions to 777, but not working:

 ls -l /tmp/php56-fpm.sock
-rw-rw----. 1 apache apache 0 Feb 17 16:11 /tmp/php56-fpm.sock

PHP-FPM www.conf listen setting (full file is here: https://pastebin.com/uD5GsMna):



<VirtualHost *:80>
   ServerName dev.stavebninyfranek.com
   DocumentRoot "/data/webs/dev"
   <FilesMatch "\.php$">
     SetHandler  "proxy:unix:/tmp/php56-fpm.sock|fcgi://"

My config files is (httpd.conf): https://pastebin.com/XS6cDuFQ

Im tryed change socket, change permission to apache:apache user, but I dont know where is problem.



This is potentially caused by systemd configuration on Apache, on Centos 7 for example by default the service is configured with :


Which means it gets its own subdirectory in /tmp visible as /tmp so it can't see files in /tmp added by other programs. The solution would be to not use /tmp for your php-fpm sockets (more secure than setting the above to false).

(I realise that in at least one case a Debian derivative is in use, but it uses systemd too!)


| improve this answer | |

I'm solved this problem, When I used


instead of /tmp/ and its working. But why cannot use some another folder instead of /var/run/ ?

| improve this answer | |
  • There are selinux permissions on that file (indicated by the dot after the permissions). You can see them with ls -Z. Most probably the file had the wrong selinux context. – Gerald Schneider Feb 17 '18 at 21:18

I just had the same problem after updating apache from 2.4.10 to 2.4.24. With old apache the connection to fcgi worked with a socket in /tmp, while the new apache gave error (2)No such file or directory. Moving the socket to /var/run solved the problem.

Looking at the source code for mod_proxy, I found that on newer apache the path should be relative to the one specified as DefaultRuntimeDir. In my configuration, this is set in /etc/apache2/apache2.conf and it also uses some definition from /etc/apache2/envvars.

| improve this answer | |

change user and group to your current apache user


** user and group must be the same in /etc/http/conf/http.conf

Then execute

chown -R user.user /run/php-fpm/www.conf

** change to your user

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.