谈谈php中的fastcgi和php-fpm!

2020-07-29 09:29:32

fastcgi 是一个与平台无关,与语言无关,任何语言只要按照它的接口来实现,就能实现自己语言的fastcgi能力和web server 通讯。

PHP-CGI就是PHP实现的自带的FastCGI管理器。

FastCGI 是一个协议,它是应用程序和 WEB 服务器连接的桥梁。Nginx 并不能直接与 PHP-FPM 通信,而是将请求通过 FastCGI 交给 PHP-FPM 处理。

 location ~ .php$ {    try_files $uri /index.php =404;    fastcgi_pass 127.0.0.1:9000;    fastcgi_index index.php;    fastcgi_buffers 16 16k;    fastcgi_buffer_size 32k;    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;    include fastcgi_params;}

这里 fastcgi_pass 就是把所有 php 请求转发给 php-fpm 进行处理。通过 netstat 命令可以看到,127.0.0.1:9000 这个端口上运行的进程就是 php-fpm.

1.jpg

开启php-fpm方式:

# nohup /usr/sbin/php-fpm -R >/dev/null 2>&1 &

查看php运行目录命令:

which php/usr/bin/php

重启php-fpm:

/etc/init.d/php-fpm restart

相关教程推荐:《PHP教程》

相关文章 大家在看