information/programming & server2008. 5. 1. 19:04
기본적으로 http://trac.lighttpd.net/trac/wiki/TutorialInstallation에 잘 설명이 되어있긴 하지만 나중에 삽질을 하지 않도록 기록해봅니다.
참고 : source compile 기준입니다.
필요한 library(libpcre, libz)를 설치합니다.
- yum install pcre
- yum install zlib
그리고 lighttpd 다운로드 : http://www.lighttpd.net/download
- wget http://www.lighttpd.net/download/lighttpd-1.4.19.tar.gz
- tar xvfz lighttpd-1.4.19.tar.gz
configure, make, make install
- cd lighttpd-1.4.19
- ./configure
- make
- make install
기본적으로 /usr/local/에 설치됩니다.
make install 실행한 위치에서 init script를 생성.
- sed -e 's/FOO/lighttpd/g' doc/rc.lighttpd.redhat > /etc/init.d/lighttpd
필요한 환경설정을 하구요.
- mkdir /etc/lighttpd
- cp ./doc/lighttpd.conf /etc/lighttpd
- adduser -s /sbin/nologin www
- touch /var/log/lighttpd/access.log
- touch /var/log/lighttpd/error.log
- chown www:www /var/log/lighttpd/access.log
- chown www:www /var/log/lighttpd/error.log
설정파일(lighttpd.conf)의 경우 거의 대부분이 주석처리 되어있고 수정할 부분도 많은데요.
lighttpd 문서(http://trac.lighttpd.net/trac/wiki/TutorialConfiguration)에 잘 설명이 되어있습니다.
그리고 설정파일에 추가로
- #### external configuration files
## mimetype mapping
include_shell "/usr/share/lighttpd/create-mime.assign.pl"
## load enabled configuration files,
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"
을 등록해 놓으면 virtual host 관리 등이 편리해지더군요.
- create-mime.assign.pl
- #!/usr/bin/perl -w
use strict;
open MIMETYPES, "/etc/mime.types" or exit;
print "mimetype.assign = (\n";
my %extensions;
while(<MIMETYPES>) {
chomp;
s/\#.*//;
next if /^\w*$/;
if(/^([a-z0-9\/+-.]+)\s+((?:[a-z0-9.+-]+[ ]?)+)$/) {
foreach(split / /, $2) {
# mime.types can have same extension for different
# mime types
next if $extensions{$_};
$extensions{$_} = 1;
print "\".$_\" => \"$1\",\n";
}
}
}
print ")\n";
- #!/usr/bin/perl -w
- include-conf-enabled.pl
- #!/usr/bin/perl -wl
use strict;
use File::Glob ':glob';
my $confdir = "/etc/lighttpd/";
my $enabled = "conf-enabled/*.conf";
chdir($confdir);
my @files = bsd_glob($enabled);
for my $file (@files)
{
print "include \"$file\"";
}
시스템에 등록합니다.
- /sbin/chkconfig --add lighttpd
- /sbin/chkconfig lighttpd on
참고 URL