<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>后院&#124;kevin’s backyard &#187; php-fpm</title>
	<atom:link href="http://kevin.9511.net/archives/tag/php-fpm/feed" rel="self" type="application/rss+xml" />
	<link>http://kevin.9511.net</link>
	<description>立志做一个混事业型男人</description>
	<lastBuildDate>Fri, 30 Apr 2010 16:55:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>HowTo: Install Nginx and php-fpm on Linux</title>
		<link>http://kevin.9511.net/archives/166.html</link>
		<comments>http://kevin.9511.net/archives/166.html#comments</comments>
		<pubDate>Fri, 19 Sep 2008 07:15:19 +0000</pubDate>
		<dc:creator>kevin</dc:creator>
				<category><![CDATA[技术备案]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php-fpm]]></category>

		<guid isPermaLink="false">http://kevin.9511.net/archives/166.html</guid>
		<description><![CDATA[最近要为公司搭建新的开发环境，打算舍弃用了n年的apache，换换口味，装个nginx试试。
在网上找了很多文档，没有一个能让我顺利安装完成的。还是自己来整理整理吧……
1，Install Pcre
来这里获取Pcre的最新版本
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/
#tar -zxf pcre-7.8.tar.gz
#cd pcre-7.8
#./configure
#make
#make install
2. Install Nginx(http://www.nginx.net/)
#tar -zxf nginx-0.6.32.tar.gz
#cd nginx-0.6.32
#./configure &#8211;prefix=/usr/local/nginx-0.6.32
#make
#make install
3. Install PHP with php-fpm (http://www.php.net/)
nginx是通过fastcgi来支持PHP的，使用php-fpm补丁是一个比较方便的管理fastcgi进程的解决方案。
比通过脚本或是lighttpd的spawn模块要简单的多。
下载好PHP后，来这里获取与PHP版本相对应的php-fpm补丁：http://php-fpm.anight.org/
#tar -zxf php-5.2.6.tar.gz
#cd php-5.2.6
#zcat ../php-5.2.6-fpm-0.5.8.diff.gz &#124; patch -p1  #为PHP打补丁
#./configure &#8211;prefix=/usr/local/php-5.2.6 &#8211;with-sqlite=shared &#8211;enable-fastcgi &#8211;enable-fpm
#make
#make install
 注：PHP的其他模块(如mysql、gd等)请按需自己配置
#cp php.ini-recommended /usr/local/php-5.2.6/lib/php.ini
修改php.ini
cgi.fix_pathinfo=1
4. Configuring
A. 配置nginx，在/usr/local/nginx-0.6.32/conf目录下新建名为php_fcgi.conf的文件，内容如下：
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
修改nginx.conf文件，在需要支持PHP的虚拟主机配置中，加入如下一行：
include php_fcgi.conf;
B. 配置php-fpm模块，编辑/usr/local/php-5.2.6/etc/php-fpm.conf文件
找到“Unix user of processes”和“Unix group of processes”两段，将前面注释去掉，并将值改为与nginx配置相同的用户和组。如下：
Unix user of processes
&#60;value [...]]]></description>
			<content:encoded><![CDATA[<p>最近要为公司搭建新的开发环境，打算舍弃用了n年的apache，换换口味，装个nginx试试。<br />
在网上找了很多文档，没有一个能让我顺利安装完成的。还是自己来整理整理吧……</p>
<p><strong>1，Install Pcre</strong></p>
<p>来这里获取Pcre的最新版本<br />
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/</p>
<blockquote><p>#tar -zxf pcre-7.8.tar.gz<br />
#cd pcre-7.8<br />
#./configure<br />
#make<br />
#make install</p></blockquote>
<p><strong>2. Install Nginx</strong>(http://www.nginx.net/)</p>
<blockquote><p>#tar -zxf nginx-0.6.32.tar.gz<br />
#cd nginx-0.6.32<br />
#./configure &#8211;prefix=/usr/local/nginx-0.6.32<br />
#make<br />
#make install</p></blockquote>
<p><strong>3. Install PHP with php-fpm</strong> (http://www.php.net/)</p>
<p>nginx是通过fastcgi来支持PHP的，使用php-fpm补丁是一个比较方便的管理fastcgi进程的解决方案。<br />
比通过脚本或是lighttpd的spawn模块要简单的多。</p>
<p>下载好PHP后，来这里获取与PHP版本相对应的php-fpm补丁：http://php-fpm.anight.org/</p>
<blockquote><p>#tar -zxf php-5.2.6.tar.gz<br />
#cd php-5.2.6<br />
#zcat ../php-5.2.6-fpm-0.5.8.diff.gz | patch -p1  <span style="color: #ff6600;">#为PHP打补丁</span><br />
#./configure &#8211;prefix=/usr/local/php-5.2.6 &#8211;with-sqlite=shared &#8211;enable-fastcgi &#8211;enable-fpm<br />
#make<br />
#make install<br />
<span style="color: #ff6600;"> 注：PHP的其他模块(如mysql、gd等)请按需自己配置</span></p>
<p>#cp php.ini-recommended /usr/local/php-5.2.6/lib/php.ini</p></blockquote>
<p>修改php.ini</p>
<blockquote><p>cgi.fix_pathinfo=1</p></blockquote>
<p><strong>4. Configuring</strong></p>
<p>A. 配置nginx，在/usr/local/nginx-0.6.32/conf目录下新建名为php_fcgi.conf的文件，内容如下：</p>
<blockquote><p>location ~ .php$ {<br />
fastcgi_pass 127.0.0.1:9000;<br />
fastcgi_index index.php;<br />
include fastcgi_params;<br />
<span style="color: #ff6600;">fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;</span><br />
}</p></blockquote>
<p>修改nginx.conf文件，在需要支持PHP的虚拟主机配置中，加入如下一行：</p>
<blockquote><p>include php_fcgi.conf;</p></blockquote>
<p>B. 配置php-fpm模块，编辑/usr/local/php-5.2.6/etc/php-fpm.conf文件<br />
找到“Unix user of processes”和“Unix group of processes”两段，将前面注释去掉，并将值改为与nginx配置相同的用户和组。如下：</p>
<blockquote><p>Unix user of processes<br />
&lt;value name=&#8221;user&#8221;&gt;www&lt;/value&gt;</p>
<p>Unix group of processes<br />
&lt;value name=&#8221;group&#8221;&gt;www&lt;/value&gt;</p></blockquote>
<p><strong>5. Test and Over</strong></p>
<p>至此，所有安装配置的工作都已经完成。运行下面两行命令来启动nginx和php-fpm服务：</p>
<blockquote><p>/usr/local/php-5.2.6/sbin/php-fpm start<br />
/usr/local/nginx-0.6.32/sbin/nginx</p></blockquote>
<p>正确配置后，phpinfo() 页应如下显示：<br />
<img src="http://kevin.9511.net/wp-content/uploads/2008/09/phf.png" alt="phf.png" /><br />
CGI/FastCGI work as Server API<br />
<img src="http://kevin.9511.net/wp-content/uploads/2008/09/phf2.png" alt="phf2.png" /><a title="phf2.png" href="http://kevin.9511.net/wp-content/uploads/2008/09/phf2.png"><br />
</a></p>
<p>由于文件内容太长，nginx.conf和虚拟主机的配置文件的内容就不放上来了<br />
将这些乱七八糟的配置文件和php-fpm.conf一起打个包，放在这里提供下载吧</p>
<blockquote><p><a href="http://rui7905.googlecode.com/svn/trunk/nginx_php_fpm" target="_blank">http://rui7905.googlecode.com/svn/trunk/nginx_php_fpm</a></p></blockquote>
<p>在这一堆东西里，还有一个名为nginx.sh的启动控制脚本。<br />
当确认nginx和php-fpm均正确的配置并可以正常运行后，可以使用此脚本进行日常维护。</p>
]]></content:encoded>
			<wfw:commentRss>http://kevin.9511.net/archives/166.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

