缺少php-fpm.sock:在CentOS 7上为php7.2

时间:2019-02-21 09:33:13

标签: php nginx centos centos7

摘要:我正在尝试在PHP7.2和CentOS 7上使用Nginx,但找不到php-fpm.sock

我曾经在Ubuntu 16上使用 PHP7.0 。最近,我切换到了 CentOS 7 。现在我正在尝试使用Nginx和最新的PHP(即 PHP7.2

对其进行设置

在Ubuntu 16上的PHP7.0上,php-fpm的套接字文件存储在...

/run/php/php7.0-fpm.sock

但是,在PHP7.2上。和CentOS7,我看不到/run/php/目录。因此,很明显,不能以某种方式在PHP7.2和CentOS上配置Nginx

我搜索了Stackoverflow,但是大多数帖子都涉及旧版本的php(例如this one

如果我运行yum install php-fpm,它将得到"already installed",因此我确定php-fpm本身已经存在

enter image description here

如果我运行“ ps aux | grep php-fpm” ...

enter image description here

我可以看到有一个直接名为/etc/php-fpm.d的文件,但只有一个名为www.conf的文件,没有套接字文件。

This tutorail显示该袜子在PHP7.2和CentOS 7上存储为/run/php-fpm/www.sock,但在我的机器上只有php-fpm.pid

那么,sock文件在哪里?任何建议将不胜感激。

PS:我也对为什么Ubuntu + PHP7和CentOS + PHP7.2在存储PHP文件的地方有如此大的差异

感兴趣。

1 个答案:

答案 0 :(得分:2)

两个发行版(Ubuntu和CentOS)使用不同的包机制(aptyum),不同的包和使用不同方法的不同维护者。因此,您可能会期望在两个系统之间事物的结构或什至工作方式上有相当大的差异。

Remi的默认PHP-FPM配置确实有一个在9000端口(AFAIK)上监听的池。

如果希望它在Unix套接字上侦听,则必须调整PHP-FPM池配置。那就是/etc/php-fpm.d/www.conf。因此,您需要在此处指定:

listen = /var/run/php-fpm/php-fpm.sock

这只是为了给您一个想法:)