配置apache以fastcgi运行php
apache默认是用自带的mod_php模块运行php,现在我们介绍使用fastcgi来执行php脚本。先说下fastcgi的优点:
Fastcgi的优点:
- 从稳定性上看, fastcgi是以独立的进程池运行来cgi,单独一个进程死掉,系统可以很轻易的丢弃,然后重新分 配新的进程来运行逻辑.
- · 从安全性上看,Fastcgi支持分布式运算. fastcgi和宿主的server完全独立, fastcgi怎么down也不会把server搞垮.
- · 从性能上看, fastcgi把动态逻辑的处理从server中分离出来, 大负荷的IO处理还是留给宿主server, 这样宿主server可以一心一意作IO,对于一个普通的动态网页来说, 逻辑处理可能只有一小部分, 大量的图片等静态
- IO处理完全不需要逻辑程序的参与.
- · 从扩展性上讲, fastcgi是一个中立的技术标准, 完全可以支持任何语言写的处理程序 (php,java,perl,ruby,c++,python...)
- · 适用操作系统,可在任何平台上http://www.fastcgi.com/dist/mod_fastcgi-current.tar.gz使用
安装apache
- wget http://apache.ziply.com//httpd/httpd-2.2.21.tar.gz
- tar xzf httpd-2.2.21.tar.gz
- cd httpd-2.2.21
- ./configure --prefix=/usr/local/apache
- make && make install
安装fastcgi
- wget http://www.fastcgi.com/dist/mod_fastcgi-2.4.6.tar.gz
- tar xzf mod_fastcgi-2.4.6.tar.gz
- cd mod_fastcgi-2.4.6
- cp Makefile.AP2 Makefile
- make top_dir=/usr/local/apache
- make top_dir=/usr/local/apache install
完成之后编辑httpd.conf配置文件,加入fastcgi模块装载代码:
- LoadModule fastcgi_module modules/mod_fastcgi.so
安装php5.2
- wget http://us2.php.net/get/php-5.2.17.tar.gz/from/am.php.net/mirror
- tar xzf php-5.2.17.tar.gz
- cd php-5.2.17
- ./configure --prefix=/usr/local/php --enable-fastcgi --disable-cli
- make && make install
配置apache支持php
编辑httpd.conf文件,加入如下代码:
- ### fastcgi ###
- ScriptAlias /fcgi-bin/ "/usr/local/php/bin/"
- AddHandler php-fastcgi .php
- Action php-fastcgi /fcgi-bin/php-cgi
- AddType application/x-httpd-php .php
- <IfModule mod_fcgid.c>
- AddHandler fcgid-script. .php .fcgi ### 暂时只配置支持.php
- IdleTimeout 300
- ProcessLifeTime 1800
- MaxProcessCount 100
- DefaultMinClassProcessCount 3
- DefaultMaxClassProcessCount 8
- IPCConnectTimeout 15
- IPCCommTimeout 300
- MaxRequestsPerProcess 100
- </IfModule>
- ### fastcgi ###
建立虚拟主机可以这样配置:
- <VirtualHost *:80>
- DocumentRoot /usr/local/apache/htdocs
- ServerName localhost
- Options +ExecCGI
- AddHandler fastcgi-script .fcgi
- AddType application/x-httpd-php .php
- Action application/x-httpd-php /fcgi-bin/php-cgi
- <Directory /usr/local/apache/htdocs>
- Options Indexes ExecCGI
- Order allow,deny
- allow from all
- </Directory>
- </VirtualHost>
详细的fastcgi指令配置请看:http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html
配置apache以fastcgi运行php的更多相关文章
- [Apache手册]Linux环境下配置Apache运行cgi
CGI动态页面 相关模块 相关指令 mod_alias mod_cgi AddHandler Options ScriptAlias CGI(公共网关接口)定义了web服务器与外部内容生成程序之间交互 ...
- 配置apache运行cgi程序
配置apache运行cgi程序 文章目录 [隐藏] ScriptAlias目录的CGI ScriptAlias目录以外的CGI 配置apache运行cgi程序可分为两种情况,一是ScriptAlias ...
- windows下配置apache+php环境
PHP安装 由于windows下php扩展5.6的多余7.0,故以php5.6为开发环境.如果对扩展要求不高,可以使用php7,安装过程类似. 约定: 环境安装目录: D:/phpsetup/ |-- ...
- Ubuntu14.04 Server amd64 配置 Apache+MySQL+Django
写在前面 因为不同版本的apache等软件文件夹和配置文件的名称设置都不尽相同,网上累死累活查了好多个博客就没一个能成功配出来的. 所以本文也不一定能帮到你,请在确定对自己有用之前不要盲目转载,以免给 ...
- 转:Apache和Nginx运行原理解析
Web服务器 Web服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务. 应用层使用HTTP协议. HTML文档格式. 浏览器统一资源定位器(URL). Web服 ...
- Nginx安装配置PHP(FastCGI)环境的教程
这篇是Nginx安装配置PHP(FastCGI)环境的教程.Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用. 一.什么是 FastCGI F ...
- Linux上配置Nginx+PHP5(FastCGI)
原为地址:http://www.laruence.com/2009/07/28/1030.html Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,以事件驱动的方式编写,所以有非常好的性能,同时 ...
- Apache和Nginx运行原理解析
Web服务器 Web服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务. 应用层使用HTTP协议. HTML文档格式. 浏览器统一资源定位器(URL). Web服 ...
- lamp环境搭建之配置apache与fpm方式的php
配置apache-2.4.9与fpm方式的php-5.4.26 一.apache.MySQL的安装参考<编译安装lamp环境> http://blog.csdn.net/reblue520 ...
随机推荐
- 微软VSS的超级BUG
发现问题:今天一个新同事,无意中发现他直接就登录进VSS了,并且还是“admin”用户: 解决问题:于是开始在网上找度娘和谷歌帮忙,真是不查不要紧,一查吓一跳,VSS本身就存在这个bug,并且是一个超 ...
- 【转】Linux写时拷贝技术(copy-on-write)
http://www.cnblogs.com/biyeymyhjob/archive/2012/07/20/2601655.html 源于网上资料 COW技术初窥: 在Linux程序中,fork()会 ...
- Hadoop基础教程之HelloWord
上一章中,我们把hadoop下载.安装.运行起来,最后还执行了一个Hello world程序,看到了结果.现在我们就来解读一下这个Hello Word. OK,我们先来看一下当时在命令行里输入的内容: ...
- Phalanx--hdu2859(dp 最大对称子图)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2859 题意就是给你一个n*n的字符矩阵,从中选出一个最大的子矩阵(m*m)满足关于斜对角线(左下角到右 ...
- linux驱动分离分层的概念
这个分离分层的概念和输入子系统有点像,但不是完全一样的.为什么会再弄一个这个模型出来我也没有搞懂,现在我的学习还停留在把知识学懂的层面上.至于为什么会产生这种知识,现在我还无从解释,还需时日成长. 这 ...
- 一个n位的数,去掉其中的k位,问怎样去使得留下来的(n-k)位数按原来的前后顺序组成的数最小
例如 8314925去掉4个数,留下125最小,注意有前后顺序要求,要是没有顺序当然是123. 解决方案 贪心算法,在每次被访问的位置保证有最优解. 思路一 分析:求一共n位,求其中的m位组成的数最小 ...
- OpenGL基础知识
基本概念 透视(Perspective)变换(Transformation)投影矩阵(Projection Matrix):用于将3D坐标转换为2D屏幕坐标光栅化(Rasterization): 实际 ...
- php set_include_path
string set_include_path ( string $new_include_path ) 为当前脚本设置 include_path 运行时的配置选项. Example #2 添加到in ...
- 深入浅出:Linux设备驱动之字符设备驱
一.linux系统将设备分为3类:字符设备.块设备.网络设备.使用驱动程序: 字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后数据.字符设备是面向流 ...
- selenium如何做兼容性测试呢
selenium如何做兼容性测试呢. 现在selenium做自动化测试基本是web driver操作浏览器做操作,code中assert关键值,做判断. 具体执行2种 1.使用htmluint 来执行 ...