fastCGI与PHP-fpm

fastCGI是nginx和php之间的一个通信接口,该接口实际处理过程通过启动php-fpm进程来解析php脚本,即php-fpm相当于一个动态应用服务器,从而实现nginx动态解析php。因此,如果nginx服务器需要支持php解析,需要在nginx.conf中增加php的配置:将php脚本转发到fastCGI进程监听的IP地址和端口(php-fpm.conf中指定)。同时,php安装的时候,需要开启支持fastCGI选项,并且编译安装php-fpm补丁/扩展,同时,需要启动php-fpm进程,才可以解析nginx通过fastCGI转发过来的php脚本

时间: 2024-11-05 12:27:19

fastCGI与PHP-fpm的相关文章

实战Nginx与PHP(FastCGI)的安装、配置与优化(转载)

一.什么是 FastCGIFastCGI是一个可伸缩地.高速地在HTTP server和动态脚本语言间通信的接口.多数流行的HTTP server都支持FastCGI,包括Apache.Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP.FastCGI是从CGI发展改进而来的.传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务器.这在处理高并发访问时,几乎是不可用的.

实战Nginx与PHP(FastCGI)的安装、配置与优化

一.什么是 FastCGIFastCGI是一个可伸缩地.高速地在HTTP server和动态脚本语言间通信的接口.多数流行的HTTP server都支持FastCGI,包括Apache.Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP.FastCGI是从CGI发展改进而来的.传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务器.这在处理高并发访问时,几乎是不可用的.

nginx、fastCGI、php-fpm关系梳理

前言: Linux下搭建nginx+php+memached(LPMN)的时候,nginx.conf中配需要配置fastCGI,php需要安装php-fpm扩展并启动php-fpm守护进程,nginx才可以解析php脚本.那么,这样配置的背后原理是什么?nginx.fastCGI.php-fpm之间又有什么关系呢?博主一直有这样的疑惑,由于无法理清nginx.php-fpm之间的关系,遇到nginx解析不了php脚本的时候,往往不知所措,花费的问题排查时间也非常长.因此,特地抽时间了解这背后的原

【转】搞不清FastCgi与php-fpm之间是个什么样的关系?

我在网上查fastcgi与php-fpm的关系,查了快一周了,基本看了个遍,真是众说纷纭,没一个权威性的定义. 网上有的说,fastcgi是一个协议,php-fpm实现了这个协议: 有的说,php-fpm是fastcgi进程的管理器,用来管理fastcgi进程的: 有的说,php-fpm是php内核的一个补丁:有的说,修改了php.ini配置文件后,没办法平滑重启,所以就诞生了php-fpm: 还有的说PHP-CGI是PHP自带的FastCGI管理器,那这样的话干吗又弄个php-fpm出来,我就

PHP常见面试题汇总

目录:1.如何使用PHP导入导出csv?2.php接收POST数据的方式有哪些?3.如何让json_encode()不转义斜杠?我在做服务器返回一些数据时需要返回一些地址,但是默认的json_code是会对 / 转义成 \/ 的4.新浪微博.QQ空间.今日头条PC版.蘑菇街.美丽说等网站是如何实现滚屏加载的?即:无刷新动态加载数据技术的应用5.移动浏览器的判断方法(通用)6.php中如何优化多个 if...elseif...elseif...else...  语句的情况?7.php如何检测当前是

漫谈HTTP(下)

http简介:    httpd是由apache软件基金会开发的一款著名的web服务器软件.由于其开放源代码,并且拥有跨平台.功能强大.安全稳定等特性,而被广泛使用.早期httpd是在修修补补的基础上成长起来的,所以早期也叫作a pachey server,由于开发httpd的组织叫作apache,因此httpd也被称作apache.httpd有三个长线维护版本,分别是httpd2.0.httpd2.2和httpd2.4.使用最为广泛的还是2.2和2.4的版本,虽然两个版本看起来数字相差不大,但

lamp 基础应用

======================================================================== 概述: Lamp介绍 ★资源类型: 静态资源: 原始形式与响应给客户端的结果一致:服务端仅仅提供一些内容展示功能,如网页内容展示,图片列表,动画播放等,服务端不需要和客户端进行互动,所有的资源可以直接去获取,但是无法进行资源上传: 动态资源: 原始形式通常为程序文件(为某种编程语言开发),需要运行后将生成的结果展示给客户端:即:服务端可以与客户端进行互

LAMP+event+xcache编译安装

第一部分:apache.mysql.php的安装 一.编译安装apache 1.解决依赖关系 httpd-2.4.4需要较新版本的apr和apr-util,因此需要事先对其进行升级.升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包.这里选择使用编译源代码的方式进行. (1) 编译安装apr # tar xf apr-1.4.6.tar.bz2 # cd apr-1.4.6 # ./configure --prefix=/usr/local/apr # make && mak

在CentOS上把PHP从5.4升级到5.5

在CentOS上把PHP从5.4升级到5.5 摘要:本文记录了在CentOS 6.3上,把PHP从5.4.8升级到5.5.13的过程. 1. 概述 在我做的一个项目中,最近我对生产服务器上的一系列系统软件进行了升级,包括Git.Nginx.MySQL和PHP.这篇文章讲的是升级PHP的过程,其他软件的升级,可见下面列出的文章. 在CentOS上把git从1.7.1升级到1.7.12.4 在CentOS上把Nginx从1.2.4升级到1.6.0 在CentOS上把MySQL从5.5升级到5.6 在

linux 安装php时不安装mysql客户端或者服务端

php5.3以上就不要安装mysql 客户端,就可以使php支持mysql截取官网  “对于 php-5.3.0或更新版本,mysqli 默认使用Mysql Native Driver作为驱动. 这个驱动比libmysql会有一些优势, --with-mysql=mysqlnd  需要在./configure 时添加  --with-mysql=mysqlnd这个映射. ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apa