PHP中fastcgi与php-fpm有何区别与联系?
- 内容介绍
- 文章标签
- 相关推荐
本文共计308个文字,预计阅读时间需要2分钟。
FastCGI是一种与平台和语言无关的协议,不依赖于具体语言或服务器。任何语言只要遵循其接口,就能实现FastCGI功能,并与Web服务器通信。PHP-CGI是PHP自带的一个FastCGI管理器。FastCGI是一个协议,它允许Web服务器与PHP等语言环境进行交互。
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.
开启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
相关教程
本文共计308个文字,预计阅读时间需要2分钟。
FastCGI是一种与平台和语言无关的协议,不依赖于具体语言或服务器。任何语言只要遵循其接口,就能实现FastCGI功能,并与Web服务器通信。PHP-CGI是PHP自带的一个FastCGI管理器。FastCGI是一个协议,它允许Web服务器与PHP等语言环境进行交互。
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.
开启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
相关教程

