NGINX: connect() to unix:/var/run/php7.2-fpm.sock failed (2: No such file or directory)

梦想与她 提交于 2019-12-06 00:11:39

first, as the log, your problem is...

you dont have the sock! the sock (php7.2-fpm----) is made when you start php.

  1. check the location to make the sock.

    • go to etc -> php -> 7.2 -> fpm -> pool.d -> www.conf
    • you can see the listen = "something something" <-- this is the location address.
    • if it is not /var/run/php/php7.2-fpm.sock, replace it.
  2. run php (sudo service php7.2-fpm restart)

  3. check the folder you download sock (var/run/php)
  4. if you get the sock, restart your nginx
  5. if you get error, that means your nginx setting (to find the sock) is wrong.
  6. go to etc -> nginx -> sites-enabled and open default
  7. if fastcgi_pass unix:/run/php/php7.2-fpm.sock; is not, replace them.
  8. save and run it.

finish.

Make sure you have everything properly setup.

sudo apt-get install php7.2-fpm
sudo service nginx restart
sudo service php7.2-fpm restart

This will generate file /run/php/php7.2-fpm.sock

/var/run/ is probably actually a symlink to /run/

/run/ belongs to root and permissions are 755. php-fpm is running as www-data so can't create a socket in /run/

The solution is to create /run/php/and change ownership to www-data, then change your socket path to /run/php/php-fpm.socket

Mine was inside another php folder, so:
/var/run/php/php7.2-fpm.sock

  • Ubuntu 18.04
  • Php 7.2
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!