nginx系列(1):快速搭建nginx + php fastcgi系统
7月 5, 2008 – 11:24 下午nginx历吏比较短,由俄罗斯人编写,以性能卓越闻名。国内用nginx做server的公司还不多,相关的学习文档还不是很完全。边学边记,共同学习。
首先分享一下搭建nginx心得.其实在ubuntu下面建立nginx平台还是十分的简单,只不过本人用linux系统的不长以及nginx的相关文档比较少,以至在前期走了不少的弯路.
1. 测试平台: ubuntu8.04
2.安装nginx
1)sudo apt-get install nginx
2)相关路径:
conf: /etc/nginx/nginx.conf
bin: /usr/sbin/nginx
vhost: /etc/nginx/sites-enable/default
cgi-params: /etc/nginx/fastcgi-params
3)例子:建一个虚拟server
在/etc/nginx/sites-enable/default中添加以下代码
- server {
- listen 80; //端口
- server_name home.ucenter; //虚拟域名
- access_log /var/log/nginx/home.ucenter.access.log; //访问日志
- location / {
- root /home/shanfeng/workspace/ucenter-home; //size根目录
- index index.php;
- }
- location ~ \.php$ { #php fastcgi的配置
- fastcgi_pass 127.0.0.1:9000; #php fastcgi的代理端口与ip
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME /home/shanfeng/workspace/ucenter-home$fastcgi_script_name; #要处理的php文件的路径
- include /etc/nginx/fastcgi_params; #fastcgi的参数文件地址
- }
- }
2.安装php-cgi
为了安装这个php-cgi可花了不少时间,看了很多文档都比较复杂。后来发现php5就带有php-cgi.安装起来就方便了很多
1)sudo apt-get install php5-cgi
2)相关路径:
php-cgi: /usr/bin/php-cgi
php5-cgi: /usr/bin/php5-cgi
cig config: /usr/bin/cgi/php.ini
3)修改php.ini文件
cgi.fix_pathinfo=1; 这样php-cgi方能正常使用SCRIPT_FILENAME这个变量
3.安装spawn-fcgi spawn-fcgi是lighttpd的一个用来控制php-cgi的工具.
wget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.gz
tar -xvf lighttpd-1.4.19.tar.gz
cd lighttpd-1.4.19/
sudo apt-get install libpcre3-dev
./configure –without-zlib –without-bzip2
make
sudo cp src/spawn-fcgi /usr/local/bin/spawn-fcgi
这样cgi控制器就安装完成.
4.启动测试系统.
1)启动fast_cgi:
spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php-cgi
注意:ip,端口与nginx服务器中的cgi-pass要对应. -C表示打开几个cgi进程
2)启动nginx (配置为上面server的设置)
sudo /etc/init.d/nginx start
3)在根目录下面添加一个index.php。
接着访问http://home.ucenter/就可以看到index.php执行的内容
别忘了改host哈.
3 Responses to “nginx系列(1):快速搭建nginx + php fastcgi系统”
用相同主题的纯飘过…
[回复此评论]
By Owlerx on Jul 6, 2008
最近正想试试nginx呢,找到这个系列了,great work, thank u!
[回复此评论]
By wyt on Aug 13, 2008
多沟通
[回复此评论]
By 果沟 on Aug 13, 2008