Lighttpd – instalacja ze źródeł

Avatar photo
  • Konrad Kowalski
  • 09/01/2011
  • Lighttpd
  • 2 komentarze
Lighttpd

Najnowsze pliki źródłowe potrzebne do kompilacji Lighttpd można pobrać na kilka sposobów. Pierwszym z nich jest bezpośrednie pobranie ze strony http://www.lighttpd.net/download/ archiwum tar. Po jego ściągnięciu należy je rozpakować a następnie przejść do nowo utworzonego katalogu ze źródłami

tar -xf lighttpd-1.4.XXX.tar.gz
cd lighttpd-1.4.XXX

Inna możliwości pozyskania najnowszej wersji Lighttpd jest SVN. Jeśli wybierzemy ten sposób dodatkowo potrzebne będą plakiety autoconf i automake.

W celu ściągnięcia najnowszych źródeł należy wydać poniższe polecenia:

svn checkout svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x/
cd lighttpd-1.4.x
./autogen.sh

W bieżącym katalogu zostanie utworzony katalog ze źródłami lighttpd. Tak pobrane źródła można później zaktualizować wydając komendę (w katalogu ze źródłami):

svn update
./autogen.sh

Instalacja zależności

W zależności od tego z jaką „funkcjonalnością” skompilujemy lighttpd do prawidłowego działania i kompilacji będzie on wymagał kilku dodatkowych pakietów.

Informacje z archiwum pakietów Debiana (lighttpd (1.4.28-2))

# libattr1 (>= 2.4.41-1) 
# libbz2-1.0
# libc6 (>= 2.3.2) [amd64, i386, mips, mipsel]
# libfam0
# libldap-2.4-2 (>= 2.4.7) 
# libpcre3 (>= 7.7) 
# libssl0.9.8 (>= 0.9.8m-1) 
# libterm-readline-perl-perl
# lsb-base (>= 3.2-14)
# mime-support
# zlib1g (>= 1:1.1.4) 

Oczywiście nie wszystkie z pakietów są potrzebne. Ich liczba i rodzaje zależą od liczby i rodzaju modułów z którymi skompilujemy lighttpd.

Przed przystąpieniem do konfiguracji i kompilacji musimy zainstalować kompilator gcc, program make itp. W Debianie najlepiej zainstalować paczkę build-essential. Po jej instalacji będziemy mieli wszystko co potrzeba.

Konfiguracja

Następnym krokiem jest uruchomienie skryptu konfiguracyjnego:

./configure

Bez podania dodatkowych opcji lighttpd skompiluje się z obsługą domyślnych modułów. W razie jakiś problemów skrypt wyświetli o tym informacje:

configure: error: pcre-config not found, install the pcre-devel package
or build with  --without-pcre

Powyższy błąd informuje nas, że nie znaleziono wymaganej do kompilacji biblioteki. Podpowiedź sugeruje nam zainstalowanie paczki pcre-devel albo skompilownie lighttpd bez jej obsługi. Aby uzyskać więcej informacji na temat skryptu konfiguracyjnego możemy wydać polecenie

./configure --help

Wyświetli się nam lista wszystkich możliwych opcji konfiguracyjnych.

Jeśli nie chcemy zainstalować lighttpd w /usr/local warto zmienić ścieżkę używając opcji–prefix podczas uruchomienia skryptu konfiguracyjnego.

Po poprawnej konfiguracji powinno się nam wyświetlić coś takiego:

Plugins:

enabled: 
  mod_access
  mod_accesslog
  ...
  i tu wiecej modułów
  ...
  mod_webdav
disabled: 
  mod_cml
  ...
  mod_trigger_b4_dl

Features:

enabled: 
  auth-crypt
  ...
  network-ipv6
disabled: 
  auth-ldap
  ...
  webdav-properties

Kompilacja

Czas rozpocząć właściwą kompilację:

make

Po krótkiej chwili lighttpd powinien zostać przygotowany do instalacji.

Instalacja

Jeśli wszystko przebiegło poprawnie możemy przejść do instalacji.

make install

Skrypty startowe

Kolejnym krokiem jest utworzenie skryptów uruchamiających serwer podczas startu systemu.
Wraz z archiwum ze źródłami w katalogu doc znajdziemy dwa takie pliki:

rc.lighttpd.redhat 
rc.lighttpd

Aby dodać skrypty startowe wykonujemy:

sed -e 's/FOO/lighttpd/g' doc/rc.lighttpd > /etc/init.d/lighttpd
chmod a+rx /etc/init.d/lighttpd
cp -p doc/sysconfig.lighttpd /etc/sysconfig/lighttpd
install -Dp ./doc/lighttpd.conf /etc/lighttpd/lighttpd.conf
chkconfig lighttpd on

Jeśli używasz Centosa lub RHEL być może będziesz potrzebował zmienić pierwszą linię:

sed -e 's/FOO/lighttpd/g' doc/rc.lighttpd > /etc/init.d/lighttpd

na

sed -e 's/FOO/lighttpd/g' doc/rc.lighttpd.redhat > /etc/init.d/lighttpd

Jeśli używasz Debiana i jego pochodnych zamiast użyć

chkconfig

użyj

update-rc.d lighttpd defaults

To by było na tyle. Serwer powinien już być do naszej dyspozycji.
Możemy go kontrolować przy pomocy wcześniej przekopiowanego skryptu startowego:

/etc/init.d/lighttpd start

Jeśli nie zależy Ci na najnowszych wersjach serwera Lighttpd oraz nie chcesz poświęcać dodatkowego czasu na kompilowanie źródeł itp., możesz zainstalować Lighttpd z gotowych paczek znajdujących się w repozytoriach większości linuksowych dystrybucji.

Warto przeczytać

2 komentarze

Możesz dodawać komentarze do tego artykułu.


  • configure: error: pcre-config not found, install the pcre-devel package or build with –without-pcre

    jak spompilować lighttpd bez jej obsługi?

    Konrad 10 lat ago Reply


Dodaj komentarz