Ubuntu 9.04 server安装nginx+php(fastcgi)

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
7568846
帖子: 63
注册时间: 2008-10-09 10:04

Ubuntu 9.04 server安装nginx+php(fastcgi)

#1

帖子 7568846 » 2009-09-03 17:23

Ubuntu 9.04 server安装nginx+php(fastcgi)
准备知识:

Ubuntu :

Ubuntu 是linux的一个版本,有非洲发布的,现在比较流行的一个版本。

参考百度说明Ubuntu

nginx  :

Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。尽管还是测试版,但是,Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名了。

Nginx 的中文维基:http://wiki.codemongers.com/NginxChs  

Nginx 的中文站: http://www.nginx.cn

参考 百度百科解释NGINX



FastCGI:

个人初步感觉是CGI的先进产物,据说速度比CGI快五倍。


好了,现在来安装:
第一步,安装nginx

由于Ubuntu 904已经包含了nginx,所以根本不要编译,安装超简单!

修改/etc/apt/sources.list文件内容为国内镜像,然后运行:

apt-get update
apt-get install nginx
即可完成安装

启动nginx:

/etc/init.d/nginx start
然后就可以访问了,http://localhost/ , 一切正常!如果不能访问,先不要继续,看看是什么原因,解决之后再继续。

下面配置php和mysql。

第二步,安装Php和mysql
安装php和MySQL:

apt-get install php5-cli php5-cgi mysql-server-5.0 php5-mysql

第三步,安装FastCgi和配置
我们需要/usr/bin/spawn-fcgi这个文件,而它是属于lighttpd这个包里面的,所以我们安装lighttpd然后把它设置为开机不启动:

apt-get install lighttpd #我们只要/usr/bin/spawn-fcgi
rcconf #去掉lighttpd开机自启动
修改nginx的配置文件:/etc/nginx/sites-available/default
修改 server_name 58.30.17.154;
修改index的一行修改为:
index index.php index.html index.htm;

去掉下面部分的注释:
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;
include /etc/nginx/fastcgi_params;

}

特别注意上面红色的字。
重新启动nginx:
/etc/init.d/nginx stop
/etc/init.d/nginx start
启动fastcgi php:

spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi


为了让php-cgi开机自启动:
cd /etc/init.d
cp nginx php-cgi
vim php-cgi

替换nginx为php-cgi


并修改相应部分为:
DAEMON=/usr/bin/spawn-fcgi
DAEMON_OPTS="-a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi"
...
stop)
echo -n "Stopping $DESC: "
pkill -9 php-cgi
echo "$NAME."
然后运行rcconf设置php-cgi为开机自启动

在/var/www/nginx-default/目录下创建一个文件: /var/www/nginx-default/index.php
文件内容是:

< ?php phpinfo();?>


然后浏览器访问nginx就可以看到一切正常了
头像
猪的右手
帖子: 16
注册时间: 2008-06-21 10:31
联系:

Re: Ubuntu 9.04 server安装nginx+php(fastcgi)

#2

帖子 猪的右手 » 2009-09-18 0:03

:em09 很有用!
阳光有味
帖子: 7
注册时间: 2009-09-24 10:06

Re: Ubuntu 9.04 server安装nginx+php(fastcgi)

#3

帖子 阳光有味 » 2009-09-24 16:00

按照楼主的方法,发现fastcgi不能自启动。只能输入spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi。
-a 表示地址
-p 表示端口
-C(大写)表示进程数
-u 表示用户
-f 表示进程
bluedusk
帖子: 9
注册时间: 2006-03-04 20:34

Re: Ubuntu 9.04 server安装nginx+php(fastcgi)

#4

帖子 bluedusk » 2010-06-15 13:28

新手有几点不明:
1. 为什么一定要安装spawn-fcgi, 直接用php-cgi -b 127.0.0.1:9000 启动有什么问题呢(貌似要占用一个bash进程不能关掉,关掉的话php-cgi进程也就挂了??)
2. spawn-fcgi不是有stand-alone版本么,还用下载lighttpd吗?? 直接apt-get install spawn-fcgi 就可以了吧
头像
link_01
帖子: 1024
注册时间: 2008-11-05 13:24

Re: Ubuntu 9.04 server安装nginx+php(fastcgi)

#5

帖子 link_01 » 2010-06-15 13:41

下载lighttpd源码,找到spawn-fcgi,cp出来,
笔记
-------------------------------------
http://blog.163.com/wqt_1101
回复