lighttpd와 PHP의 FAST-CGI 방식이 성능이 좋다는 이야기를 오래 전부터 들어왔기 때문에 시간을 내어 설치해 보았습니다. 방금 환경 설치를 완료하고 아직 성능을 살펴보지 않았습니다
. install lighttpd+PHP(FAST-CGI)+mysql 궁금한 사항이 있으시면 댓글 남겨주세요.
1. 먼저 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
소켓 = /tmp /mysql- 3308.sock
#
cp /data2/ali/mysql3308/ /data2/ali/mysql3309/
vi /data2/ali/mysql3309/my.cnf
내용을 다음과 같이 수정합니다:
#
[mysqld]
datadir = /data2/ali/mysql3309/
port = 3309
소켓 = /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
20872pts/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 -S /tmp/mysql-3108.sock
에 연결합니다
.
2. 그런 다음 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
/usr/local/php-fcgi/bin/php-cgi -v
명령을 실행하여
"PHP 5.2.4(cgi-fcgi)가 포함된 내용을 표시할 수 있습니다. )"는 fast-cgi가 지원됨을 나타냅니다. PHP 5.2.4 (cgi-fcgi) ( build
: Oct 28 2007 20:08:41)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v2.2.0, Copyright (c
)) 1998-2007 젠드 테크놀로지스
3. 마지막으로 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 모듈
## 자세한 내용은 fastcgi.txt를 읽어보세요.
## PHP의 경우 php.ini에서 cgi.fix_pathinfo = 1을 설정하는 것을 잊지 마세요.
fastcgi.server = ( ".php" =>
( "localhost" =>
(
"소켓" => "/var/run/lighttpd/php-fastcgi.socket",
"bin-path" => "/usr/local/php-fcgi/bin/php-cgi"
)
)
)
처음에는 "bin-path" => "/usr/local/php-fcgi/bin/php"로 구성을 작성했는데 오류가 발견되었습니다. 나중에 위 구성을 변경해 보니 괜찮네요!
lighttpd를 시작하는 명령은 다음과 같습니다:
/usr/local/lighttpd/sbin/lighttpd -f conf/lighttpd.conf
마지막으로 프로그램 디렉토리에 test.php를 생성하여 정상인지 확인하시면 됩니다!