Nginx+PHP-FPM的域Socket(套接字)配置

2021-07-16  本文已影响0人  taobao

Nginx连接fastcgi的两种方式

两者之间的区别

什么是域Socket配置

Uninx doamin socket 或者 IPCsocket是一种终端,可以是同一操作系统上的两个或者多个进程间进行数据通信,与管道相比,Uninx domain sockets可以使用字节流和数据队列,而管道通信只能通过字节流。Uninx domain sockets不使用网络底层协议来通信,是POSIX操作系统里的一种组件,使用系统文件的地址来作为自己的身份,可以被系统进程引用,两个进程可以同时打开一个Unix domain sockets文件来进行通信,不过这种通信方式是发生在系统内核里,不会在网络里传播

创建socket文件

touch /data/php-fcgi.sock
chown www:www /data/php-fcgi.sock
chmod 777 /data/php-fcgi.sock

Nginx相关配置

location ~\.php$ {
  root /home/wwwroot;
  include fastcgi_params;
  #fastcgi_pass  127.0.0.1:9000;                #TCP模式
  fastcgi_pass unix:/data/php-fcgi.sock;     #套接字模式
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME/$fastcgi_script_name;
}

PHP-FPM配置

/etc/php/php-fpm.conf //不同环境具体路径不一样

user = www
group = www
;listen = 127.0.0.1:9000            //非socket模式
listen = /data/php-fcgi.sock      //socket模式

总结

上一篇 下一篇

猜你喜欢

热点阅读