PHP+FastCGI+Nginx动态请求处理配置
Nginx不支持对外部程序的调用,所以必须通过FastCGI接口实现对外部程序的调用从而实现对client动态页面请求的处理。
CGI的英文全称为Common Gateway Interface(公共网关接口),是Nginx和动态脚本程序的桥梁。Nginx通过FastCGI接口将动态请求发送给FastCGI,FastCGI中的Wrapper进程生成一个线程。将请求交给脚本解释程序运行,然后通过原来的socket将解释运行后的结果原路返回给Nginx,之后Nginx将结果交给client。
Nginx是通过套接字文件socket来将动态请求发送给wrapper,使用的是Tcp协议。wrapper通过CGI接口来接受请求。这样webserver和解释程序之间全然能够独立开发,这样避免了解释程序直接调用server的接口而导致的出错和崩溃以及安全性问题。并且能够使Nginx专心处理静态页面请求和转发动态请求。而将脚本解释器安装在还有一台server,使server的压力得到分摊。
CGI是作为PHP程序的补丁开发的,安装PHP首先安装其所依赖的库,之后在编译配置參数时增加对CGI的支持--enable-fpm --enable-cgi等选项。编译PHP的扩展模块。须要用到php中的phpize工具用来生成模块编译时的configure文件。假设执行phpize时无法生成configure文件,原因有:没有安装autoconf软件包。
php-fpm进程的配置文件为/usr/local/php/etc/php-fpm.conf 能够对php-fpm进行对应的配置。
Nginx配置支持fastcgi:
location ~ \.php${
root html;
fastcgi_pass unix:/tmp/fastcgi.soke //通过套接字文件和cgi建立联系,该文件在php-fpm.conf中设置
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME html$SCRIPT_FILE_NAME;设置參数
include fastcgi_params; //导入fastcgi參数配置文件。该文件在nginx安装时自己主动生成。
}
PHP+FastCGI+Nginx动态请求处理配置的更多相关文章
- PHP+FastCGI+Nginx配置PHP运行环境方法
PHP+FastCGI+Nginx配置PHP运行环境 Nginx不支持对外部程序的调用,所以必须通过FastCGI接口实现对外部程序的调用从而实现对客户端动态页面请求的处理. CGI的英文全称为Com ...
- nginx动态配置及服务发现那些事
Reference: http://xiaorui.cc/2016/10/16/nginx%E5%8A%A8%E6%80%81%E9%85%8D%E7%BD%AE%E5%8F%8A%E6%9C%8D% ...
- docker:nginx+confd动态生成配置
docker:nginx+confd动态生成配置 当我们项目越来越多时手动去服务器修改nginx配置是一件很麻烦而且可能出错的事情.我们可以通过nginx+confd+配置中心实现一套方案避免出错并减 ...
- nginx反向代理配置及优化
nginx反向代理配置及优化前言: 由于服务器apache抗不住目前的并发.加上前端squid配置后,问题依然无法解决.而页面程序大部分是动态.无法使用fastcgi来处理.因此想使用nginx做为反 ...
- nginx 的基础配置[转]
nginx 的基础配置 分类: 工具软件2013-11-13 23:26 11人阅读 评论(0) 收藏 举报 目录(?)[-] 管理配置文件 全局配置 虚拟机server配置 location配置 ...
- Nginx安装及配置详解
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
- nginx简介与配置
nginx简介 nginx(发音同engine x)是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行. nginx由俄罗斯的程序 ...
- Nginx安装及配置详解包括windows环境
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
- Nginx安装及配置详解【转】
nginx概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器:同时也是一个IMAP.POP3.SMTP代理服务器:nginx可以作为一个HTTP服务器进行网站的发布处理,另外 ...
随机推荐
- CentOS下安装SVN服务端
---恢复内容开始--- 1.使用yum安装 yum install subversion 2.创建仓库 1.创建成功后在svn下面多了几个文件夹. cd /home mkdir svn svnadm ...
- Python学习笔记(5)--数据结构之字典dict
字典(dict) 定义:键值对集合 初始化:{}, {'1' : 'abc', '2' : 'def'} 1.增加:单个数据直接赋值 update(dict2) ---把dict2的元素加入到dic ...
- Java 学习(12):重写(Override)与重载(Overload) & 多态
目录 --- 重写 --- 重载 --- 多态 重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变.即外壳不变,核心重写! 重写的好处在于子类可 ...
- cocos2d-x 3.1 学习(一):工具安装与配置环境
初级学习cocos2d-x 3.1开发,学习开发过程记录到博客上面来,哪写的不正确请指点. 1.工具安装 cocos2d-x 3.1rc0 最新版本号,下载后解压.下载地址:http://www.co ...
- django 笔记3
FBV function base view url.py index -> 函数名 view.py def 函数(requset): ... CBV class base view /inde ...
- 动态调用WebService-获取天气
string url = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx"; string[] args ...
- 新手教程:电信+广电(或其他运营商)双WAN设置
由于国内不同运营商之间互联互通存在问题,假如用联通的线路去访问电信的站点那么会比较卡,反之亦然:所以如果两个WAN的线路不是同一个运营商,一般都是建议用户双WAN模式选为“智能路由”.经过本人测试发现 ...
- VBA关闭工作簿和退出Excel
VBA关闭工作簿和退出Excel链接:http://www.excelpx.com/thread-233045-1-1.html 兰色幻想VBA基础入门和高级开发全套80集视频教程,助你成为VBA开发 ...
- 【玲珑杯 round#18 B】图论你先敲完模板
[Link]:http://www.ifrog.cc/acm/problem/1146 [Description] [Solution] 设f[i]表示在第i个点休息的话最少需要的体力值; f[i]= ...
- Mysql学习总结(10)——MySql触发器使用讲解
触发器(TRIGGER)是由事件来触发某个操作.这些事件包括INSERT语句.UPDATE语句和DELETE语句.当数据库系统执行这些事件时,就会激活触发器执行相应的操作.MySQL从5.0.2版本开 ...