nginx官方现在已经针对centos提供了repository,所以现在可以直接通过yum来安装啦,很方便。

nginx官方安装教程:http://nginx.org/en/download.html

第一步,先导入nginx最新稳定版的官方repository

 
1
rpm-ivh http://nginx.org/packages/rhel/5/noarch/RPMS/nginx-release-rhel-5-0.el5.ngx.noarch.rpm

安装nginx

 
1
yum install nginx

第二步,安装php-fpm和一些依赖的PHP扩展

 
1
yum install php-fpm php-cli php-pdo php-mysql php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php-pear php-pecl-memcache

什么是FastCGI?

FastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器保存在内存中并因此获得较高的性能。众所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保存在内存中并接受FastCGI进程管理器调度,则可以提供更好的性能、伸缩性、Fail-Over特性等。

FastCGI工作原理

FastCGI进程管理器自身初始化,启动多个CGI解释器进程(多个PHP-CGI进程)并等待来自WebServer的连接。php-fpm作为进程管理器启动多个php-cgi
进程。启动php-cgi FastCGI进程时,可以配置以TCP和UNIX套接字两种方式启动

然后设置一下开机自启

 
1
2
3
chkconfig--level345mysqld on
chkconfig--level345php-fpm on
chkconfig--level345nginx on

第三步,修改nginx配置文件
首先,fastcgi_params 要加入这一行
vim /etc/nginx/fastcgi_params

 
1
fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name;

然后修改nginx配置文件的server部分
vim /etc/nginx/conf.d/default.conf

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
server{
        listen80;
        server_name localhost;
 
        index index.htmlindex.htmindex.php;
        root/home/xxx;#网站的根目录
 
        location/aaa/{#网站相对于根目录的地址
            if($request_filename!~*/(index\.php|images|1-s|sitemap\.xml|robots\.txt|image|css|js|lib|resource|uploads/thumb)){#这里是针对CodeIgniter目的是隐藏index.php
                   rewrite^/(.*)$/aaa/index.php?$1last;
            }
        }
 
        location/bbb/{#配置另外一个相对于根目录的测试网站
            if($request_filename!~*/(index\.php|images|1-s|sitemap\.xml|robots\.txt|image|css|js|lib|resource|uploads/thumb)){
                   rewrite^/(.*)$/bbb/index.php?$1last;
            }
        }
 
        location~\.php${
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi_params;
        }
}

P.S CodeIgniter config.php文件中的$config['uri_protocol']需要设置成AUTO

最后启动nginx和php-fpm就行啦

 
1
2
service nginx restart
/etc/init.d/php-fpm start

但这只是最基本的nginx php-fpm和CodeIgniter的配置,针对服务器的优化策略还是要自己制定。

引用:http://www.linux-centos.com/2011/12/29/centos-nginx-php-fpm-%E9%85%8D%E7%BD%AEcodeigniter/

CentOS + Nginx + PHP-FPM(FastCGI) 配置CodeIgniter的更多相关文章

  1. nginx上用fastcgi配置python环境

    费了2天的功夫,翻阅了无数的中文.英文资料,终于搞定.写下此文留待以后翻阅用      本文环境,centOS 5.4 ,Nignx-0.8.49, Python 2.6.5   ========== ...

  2. CentOS+Nginx+PHP+MySQL详细配置(图解)

    原文地址: http://www.jb51.net/article/26597.htm CentOS+Nginx+PHP+MySQL详细配置(带有图解),需要的朋友可以参考下.   一.安装MySQL ...

  3. nginx连接php fastcgi配置

    匹配到php结尾的文件抛到后端 后端php端口9000

  4. nginx fastcgi配置

    1.1 nginx概述nginx简介Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/P ...

  5. Centos 7 上使用nginx为Node.js配置反向代理时错误:(13: Permission denied) while connecting to upstream

    错误来源:Centos 7 上使用nginx为Node.js配置反向代理时产生(13: Permission denied) while connecting to upstream的错误 nginx ...

  6. FastCGI介绍及Nginx fastcgi配置优化

    FastCGI介绍 FastCGI是从CGI发展改进而来的.传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务 ...

  7. 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境

    在阿里云服务器上配置CentOS+Nginx+Python+Flask环境 项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿 ...

  8. CentOS mini 和 nginx 的安装和配置要点

    1.安装VMware Player    版本:5.0.2 build-1031769 2.安装XShell    版本:Build 0126 3.安装CentOS    版本:6.4-x86_64- ...

  9. linux应用之nginx的安装及配置(centos)

    Ubuntu/CentOS 系统上安装与配置Nginx 一.在线安装: Ubuntu:sudo apt-get install nginx CentOS: sudo yum install nginx ...

随机推荐

  1. Collection总结一览

    Java中集合大家族的成员实在是太丰富了,有常用的ArrayList.HashMap.HashSet,也有不常用的Stack.Queue,有线程安全的Vector.HashTable,也有线程不安全的 ...

  2. 并查集+拓扑排序 赛码 1009 Exploration

    题目传送门 /* 题意:无向图和有向图的混合图判环: 官方题解:首先对于所有的无向边,我们使用并查集将两边的点并起来,若一条边未合并之前, 两端的点已经处于同一个集合了,那么说明必定存在可行的环(因为 ...

  3. POJ2570 Fiber Network(Floyd)

    d[i][j]表示从i点到j点可以全程提供光纤的公司的集合,集合用26位的二进制压缩. 那么状态转移方程就是dk[i][j]|=dk-1[i][k]&dk-1[k][j]. #include& ...

  4. Unity3D Built-in Shader详解一

    Unity3D内置了很多Shader,文档很详细,自己翻一下.便于加深印象. 首先先解释下Unity3D的Shader.Unity里面的Shaders是使用一种叫ShaderLab的语言编写的,它同微 ...

  5. BZOJ1111 : [POI2007]四进制的天平Wag

    POI2007完结撒花~ 首先将n转化为四进制,从低位到高位DP f[i]表示这一位不向下一位借位 g[i]表示这一位向下一位借位,但借的那个不算在i f[0]=0,g[0]=inf f[i]=mer ...

  6. TopCoder SRM 588 DIV2 KeyDungeonDiv2

    简单的题目 class KeyDungeonDiv2 { public: int countDoors(vector <int> doorR, vector <int> doo ...

  7. 【BZOJ】1602: [Usaco2008 Oct]牧场行走(lca)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1602 一开始以为直接暴力最短路,但是n<=1000, q<=1000可能会tle. 显然 ...

  8. Linux下MySQL的备份与还原

    Linux下MySQL的备份与还原 1. 备份 [root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录) [roo ...

  9. [原]Android Studio查询SHA1的方法

    前提:C:\Users\Administrator\AndroidStudioProjects文件夹中存在xxx.jks秘钥文件,比如: 进入Android Studio的Terminal: Micr ...

  10. java 面向对象--------时间作业

    编写Java应用程序.首先,定义一个时钟类——Clock,它包括三个int型 成员变量分别表示时.分.秒,一个构造方法用于对三个成员变量(时.分.秒) 进行初始化,还有一个成员方法show()用于显示 ...