早就聽說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 my-standard-5.0.276-56876lin -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/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
"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,檢查一下是否正常!