PHP-FPM和Nginx使用Unix Domain Socket通讯

第一步,创建 unix domain sock 文件

cd /run
mkdir php && cd $_
touch php7.4-fpm.sock
chown www-data:www-data php7.4-fpm.sock
chmod 777 ./php7.4-fpm.sock

第二步,配置 php-fpm

cd /usr/local/php/php74/etc/php-fpm.d
vi www.conf

listen = 127.0.0.1:9074 改为 listen = /run/php/php7.4-fpm.sock

保存后,执行systemctl restart php7.4-fpm重启 php-fpm 。

第三步,配置 nginx

fastcgi_pass 127.0.0.1:9074;改为fastcgi_pass unix:/run/php/php7.4-fpm.sock;

保存后,执行nginx -s reload使 nginx 配置生效。

PS. 可以把 Unix Domain Socket 文件放到 /dev/shm 下以提高性能。因为这个目录不在硬盘上,而是在内存里。

PS. 这么改完之后,一定记得所有用到这个 PHP-FPM 的站点,nginx 配置都要做如上修改,不然网站就访问不了了。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注