加载中…
个人资料
红蚂蚁
红蚂蚁
  • 博客等级:
  • 博客积分:0
  • 博客访问:16,692
  • 关注人气:1
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

lighttpd+PHP(FAST-CGI)+mysql的学习笔记[原创]

(2007-11-28 14:23:29)
标签:

IT/科技

lighttpd

fast-cgi

mysql

学习

web-server

分类: LIGHTTPD

早就听说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        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        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

 

最后可以在程序目录下建个test.php,检查一下是否正常!

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有