Ubuntu+Nginx+PHP5+FastCGI

基于平台ubuntu的基础上安装nging,5,, MySQL.

1.安装 MySQL:

root@ptubuntu:~#aptitude install mysql-server mysql-client libmysqlclient15-dev

2.安装 PHP5

root@ptubuntu:~#aptitude install php5-common php5-cgi php5-mysql php5-cli

3.安装gcgi程序

有几个不同的做法在这里使用安装 lighttpd 提取spawn-fcgi所以我们编辑它但不安装.

root@ptubuntu:~#wget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.gz
root@ptubuntu:~#tar xvzf lighttpd-1.4.19.tar.gz
root@ptubuntu:~#cd lighttpd-1.4.18.tar.gz
root@ptubuntu:~#./configure
root@ptubuntu:~#make
root@ptubuntu:~#cp src/spawn-fcgi /usr/bin/spawn-fcgi

接下来要配置 FastCGI 设置端口号 listen on 127.0.0.1 port 9000, 配置文档 /usr/bin/php5-fastcgi

root@ptubuntu:~#/usr/bin/php5-fastcgi

#!/bin/sh
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www-data -g www-data -C 2 -f /usr/bin/php5-cgi

设置php5-fastcgi权限:

root@ptubuntu:~#chmod +x /usr/bin/php5-fastcgi

创建连接使用(ln -s)  php-fastcgi:

root@ptubuntu:~#ln -s /usr/bin/php5-fastcgi /usr/bin/php-fastcgi

现在打开init.d 目录修改 /etc/init.d/fastcgi文档:

root@ptubuntu:~#/etc/init.d/fastcgi

#!/bin/bash
PHP_SCRIPT=/usr/bin/php-fastcgi
RETVAL=0
case "$1" in
	start)
		echo "Starting fastcgi"
		$PHP_SCRIPT
		RETVAL=$?
  ;;
	stop)
		echo "Stopping fastcgi"
		killall -9 php5-cgi
		RETVAL=$?
  ;;
	restart)
		echo "Restarting fastcgi"
		killall -9 php5-cgi
		$PHP_SCRIPT
		RETVAL=$?
  ;;
	*)
		echo "Usage: php-fastcgi {start|stop|restart}"
		exit 1
  ;;
esac
exit $RETVAL

修改fastcgi权限:

root@ptubuntu:~#chmod 755 /etc/init.d/fastcgi

启动Fastcgi:

root@ptubuntu:~#/etc/init.d/fastcgi start

你应该会看到下面这个:

Starting fastcgi
spawn-fcgi.c.197: child spawned successfully: PID: 19026

设置系统开机启动:

root@ptubuntu:~#update-rc.d fastcgi defaults

创建FastCGI配置文件nginx /usr/local//fastcgi.conf

root@ptubuntu:~#vi /usr/local/nginx/fastcgi.conf

fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;

修改 nginx文档

root@ptubuntu:~# vi /etc/nginx/sites-available/default

添加下面这几行使得nginx可以支持PHP FastCGI socket:

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/ptubuntu.com/public_html$fastcgi_script_name;
include /usr/local/nginx/fastcgi.conf;

}

原创文章,转载请注明: 转载自PT Ubuntu Blog

本文链接地址: http://www.ptubuntu.com/2009/04/2172.html

Share

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


Verify Code   If you cannot see the CheckCode image,please refresh the page again!