您的位置:首页 > 理论基础 > 计算机网络

lighttpd+PHP(FAST-CGI)+mysql的学习笔记(转)

2010-08-19 11:45 429 查看
早就听说lighttpd加PHP的FAST-CGI方式性能不错,抽时间装了下.只是完成了环境的安装,还没具体看性能什么的!

以下是我装lighttpd+PHP(FAST-CGI)+mysql的,如有问题,请给我评论.

一、先安装mysql

安装mysql,你可以安装源码包,也可以用编译好的!直接解压拷贝也行.我用的是直接拷贝编译好的!

1.编译源码包

./configure  --prefix=/data2/ali
--enable-assembler --enable-thread-safe-client
--without-debug

make

make install

2.用编译好的压缩包!直接解压拷贝

tar zxf mysql-standard-5.0.27-linux-i686-glibc23.tar.gz

cd mysql-standard-5.0.27-linux-i686-glibc23

cp -rf mysql-standard-5.0.27-linux-i686-glibc23
/usr/local/mysql

//以下是为了启动多个端口

mkdir -p /data2/ali/mysql3308

mkdir -p /data2/ali/mysql3309

./scripts/mysql_install_db
--ldata=/data2/ali/mysql3308 

cp support-files/my-medium.cnf /data2/ali/mysql3308/my.cnf

vi /data2/ali/mysql3308/my.cnf

修改内容如下:
#

[mysqld]

datadir        
= /data2/ali/mysql3308/

port           
= 3308

socket         
= /tmp/mysql-3308.sock

#

cp /data2/ali/mysql3308/
/data2/ali/mysql3309/

vi /data2/ali/mysql3309/my.cnf

修改内容如下:
#

[mysqld]

datadir        
= /data2/ali/mysql3309/

port           
= 3309

socket         
= /tmp/mysql-3309.sock

#

启动mysql

/usr/local/mysql/bin/mysqld_safe
--defaults-file=/data2/ali/mysql3308/my.cnf 
--user=root &

/usr/local/mysql/bin/mysqld_safe
--defaults-file=/data2/ali/mysql3309/my.cnf 
--user=root &

检查mysql是否启动成功。

ps -ax|grep mysql 
20835
pts/3   
S     
0:00 /bin/sh ./mysqld_safe
--defaults-file=/data2/ali/mysql3308/my.cnf --user=root

20862 pts/3   
Sl    
0:00 /usr/local/mysql/bin/mysqld
--defaults-file=/data2/ali/mysql3308/my.cnf
--basedir=/usr/local/mysql --datadir=/data2/ali/mysql3308/
--user=root --pid-file=/data2/ali/mysql3308//XD_Blog_Web_132_42.pid
--skip-external-locking --port=3308
--socket=/tmp/mysql-3308.sock

20872 pts/3   
S     
0:00 /bin/sh ./mysqld_safe
--defaults-file=/data2/ali/mysql3309/my.cnf --user=root

20903 pts/3   
Sl    
0:00 /usr/local/mysql/bin/mysqld
--defaults-file=/data2/ali/mysql3309/my.cnf
--basedir=/usr/local/mysql --datadir=/data2/ali/mysql3309/
--user=root --pid-file=/data2/ali/mysql3309//XD_Blog_Web_132_42.pid
--skip-external-locking --port=3309
--socket=/tmp/mysql-3309.sock

连接mysql

mysql -S /tmp/mysql-3108.sock

 

二、接着安装php

tar zxf php-5.2.4.tar.gz

cd php-5.2.4

./configure /

   
--prefix=/usr/local/php-fcgi /

   
--enable-fastcgi /

   
--enable-force-cgi-redirect /

   
--without-iconv /

   
--enable-mbstring /

   
--with-mysql=/usr/local/mysql

make

make install

复制参数文件到目标目录:

cp php.ini-dist /usr/local/php-fcgi/lib/php.ini

检查fast-cgi是否安装成功可以运行如下命令

/usr/local/php-fcgi/bin/php-cgi -v

显示如下信息,内容里包含“PHP 5.2.4
(cgi-fcgi)"表示支持fast-cgi了
PHP 5.2.4 (cgi-fcgi)
(built: Oct 28 2007 20:08:41)

Copyright (c) 1997-2007 The PHP Group

Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend
Technologies

三、最后安装lighttpd

1.安装配置lighttpd

1.1 首先创建运行lighttpd的用户和组

# groupadd lighttpd

# useradd -g lighttpd -s /sbin/nologin -d /dev/null lighttpd

1.2 开始安装lighttpd

# wget http://www.lighttpd.net/download/lighttpd-1.4.8.tar.gz
# tar -zxvf lighttpd-1.4.8.tar.gz

# cd lighttpd-1.4.8

# ./configure --prefix=/usr/local/lighttpd

# make

# make install

# mkdir /usr/local/lighttpd/conf

# mkdir /usr/local/lighttpd/log

# mv ./doc/lighttpd.conf /usr/local/lighttpd/conf/

# cp ./doc/rc.lighttpd.redhat /etc/init.d/lighttpd

 

vi conf/lighttpd.conf

将 #”mod_fastcgi”, 的#去掉
server.modules             
= (

                              
"mod_rewrite",

                              
"mod_redirect",

#                              
"mod_alias",

                               
"mod_access",

#                              
"mod_cml",

#                              
"mod_trigger_b4_dl",

#                              
"mod_auth",

#                              
"mod_status",

#                              
"mod_setenv",

                              
"mod_fastcgi",

找到fastcgi的定义

#### fastcgi
module

## read fastcgi.txt for more info

## for PHP don't forget to set cgi.fix_pathinfo = 1 in the
php.ini

fastcgi.server            
= ( ".php" =>

                              
( "localhost" =>

                                
(

                                  
"socket" => "/var/run/lighttpd/php-fastcgi.socket",

                                  
"bin-path" => "/usr/local/php-fcgi/bin/php-cgi"

                                
)

                              
)

                           
)

一开始我把配置写"bin-path" =>
"/usr/local/php-fcgi/bin/php"这样,发现报错,后来改了下以上的配置,发现OK了!

启动lighttpd命令是这样的:

/usr/local/lighttpd/sbin/lighttpd -f conf/lighttpd.conf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息