lighttpd+PHP(FAST-CGI)+MySQL的學習筆記

早就聽說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

最後可以在程序目錄下建個test.php,檢查一下是否正常!

· 把年齡相仿的獅虎熊放一起,誰更厲害?結果出人意料

很多人都想知道獅子、老虎和熊打起來誰最厲害,于是便有好事之人把這三種動物關在一起...

· 湖北宜昌三峽壩區水面驚現神秘動物

近日,湖北宜昌,一段視頻在當地熱傳:有網友在三峽壩區拍到神秘動物,體型碩大數米長...

· 什麽是語段?語段的類型以及和句群、段落的區別與聯系是什麽?

句群是最高級的語言單位。 段落(自然段)是章法單位...

 
【Rebol學習筆記】第一篇:編寫一個簡單的CGI程序
關于 Rebol 語言的介紹,請查閱《開發高手》上蔡學镛的連載。在 2004 《程序員》合訂本中有全部的。官方網站: http://www.rebol.commailing list: http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-month-index.r?mo...查看完整版>>【Rebol學習筆記】第一篇:編寫一個簡單的CGI程序
 
【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序
【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序 【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序 關于 Rebol 語言的介紹,請查閱《開發高手》上蔡學镛的連載。在 2004 《程序員》合訂本中有全部的。...查看完整版>>【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序
 
【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序
關于 Rebol 語言的介紹,請查閱《開發高手》上蔡學镛的連載。在 2004 《程序員》合訂本中有全部的。官方網站: mailing list: FAQ:CodeBook:how-to:還有更多的資源自己用 google 搜。廢話不多說。前天我開始對照蔡老...查看完整版>>【Rebol 學習筆記】第一篇:編寫一個簡單的 CGI 程序
 
WML學習(七):CGI編程
CGI編程  1)在WEB服務器上添加WML的MIME類型    對于IIS4,可在其管理器裏的站點屬性中加入新的MIME類型,後綴.wml和 MIME類型text/vnd.wap.wml。    對于PWS,可修改注冊表,先在 HKEY_CLASSES_ROOT層加入主...查看完整版>>WML學習(七):CGI編程
 
PHP PDO 學習筆記
PHPPDO 學習筆記lib.cublog.cn 2007年11月13日09:36 作者: 流水孟春 【大中小】■PDO爲何物?POD(PHP Data Object)擴展在PHP5中加入,PHP6中將默認識用PDO連接數據庫,所有非PDO擴展將會在PHP6被從擴展中移除。該...查看完整版>>PHP PDO 學習筆記