CentOS + Nginx + PHP-FPM(FastCGI) 配置CodeIgniter
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的更多相关文章
- nginx上用fastcgi配置python环境
费了2天的功夫,翻阅了无数的中文.英文资料,终于搞定.写下此文留待以后翻阅用 本文环境,centOS 5.4 ,Nignx-0.8.49, Python 2.6.5 ========== ...
- CentOS+Nginx+PHP+MySQL详细配置(图解)
原文地址: http://www.jb51.net/article/26597.htm CentOS+Nginx+PHP+MySQL详细配置(带有图解),需要的朋友可以参考下. 一.安装MySQL ...
- nginx连接php fastcgi配置
匹配到php结尾的文件抛到后端 后端php端口9000
- nginx fastcgi配置
1.1 nginx概述nginx简介Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/P ...
- 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 ...
- FastCGI介绍及Nginx fastcgi配置优化
FastCGI介绍 FastCGI是从CGI发展改进而来的.传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务 ...
- 在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境 项目运行环境 阿里云(单核CPU, 1G内存, Ubuntu 14.04 x64 带宽1Mbps), 具体购买和ssh连接阿 ...
- CentOS mini 和 nginx 的安装和配置要点
1.安装VMware Player 版本:5.0.2 build-1031769 2.安装XShell 版本:Build 0126 3.安装CentOS 版本:6.4-x86_64- ...
- linux应用之nginx的安装及配置(centos)
Ubuntu/CentOS 系统上安装与配置Nginx 一.在线安装: Ubuntu:sudo apt-get install nginx CentOS: sudo yum install nginx ...
随机推荐
- Windows下64位Apache服务器的安装
转自:http://www.blogjava.net/greatyuqing/archive/2013/02/13/395308.html 首先需要说明的是,Apaceh服务器没有官方的64位版本,只 ...
- 2016.6.13 php与MySQL数据库交互之数据库中的商品信息展示
<table width="550" border="2" align="center" cellpadding="0&qu ...
- 解决Fiddler无法抓到手机的会话包
解决Fiddler无法抓到手机的会话包 使用Fiddler抓手机的会话包涉及多个方面,所以容易出现无法抓取包的情况.遇到这类问题,需要按照以下顺序进行检查和排除. (1)在Fiddler中设置 ...
- [LintCode] Continuous Subarray Sum II
Given an integer array, find a continuous rotate subarray where the sum of numbers is the biggest. Y ...
- LIST_ENTRY
一个常见的 Windows 2000 数据类型是 LIST_ENTRY 结构.内核使用该结构将所有对象维护在一个双向链表中.一个对象分属多个链表是很常见的, Flink 成员是一个向前链接,指向下一个 ...
- 计算几何 2013年山东省赛 A Rescue The Princess
题目传送门 /* 已知一向量为(x , y) 则将它旋转θ后的坐标为(x*cosθ- y * sinθ , y*cosθ + x * sinθ) 应用到本题,x变为(xb - xa), y变为(yb ...
- C#控制鼠标位置
It is not possible using the .NET BCL. However if you really want it you can use native SetCursorPos ...
- LA 4080 (多源最短路径+边修改+最短路径树)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=32266 题目大意:①先求任意两点间的最短路径累加和,其中不连通的边 ...
- RETINA显示屏下ICON优化方法
便于理解,先来了解几个名词: dpi(dots per inch),每英寸的点数,用来测量任何设备的硬件分辨率.一个21”的屏幕可以拥有1680 X 1050 的分辨率,27”的屏幕也可以拥有相同的分 ...
- 【UR #4】元旦三侠的游戏(博弈论+记忆化)
http://uoj.ac/contest/6/problem/51 题意:给m($m \le 10^5$)个询问,每次给出$a, b(a^b \le n, n \le 10^9)$,对于每一组$a, ...