Lighttpd
Lighttpd, puhekielessä "Lighty", on kevyt vaihtoehto Apachelle http-palvelimiin joissa ei ole tarvetta Apachen hurjalle ominaisuuskirjolle.
Asennus
Lighttpd ölytyy useimpien jakeluiden paketinhallinnasta. Esimerkiksi Debianissa ja Ubuntussa asennus onnistuisi komennolla
# apt-get install lighttpd
PHP
Dynaamisten sivujen käyttö on mahdollista FastCGI:n ja PHP:n avulla. Aluksi on asennettava PHP:n CGI-versio, joka esimerkiksi Debianissa ja Ubuntussa löytyisi paketista php5-cgi ja asennettaisiin komennolla
# apt-get install php5-cgi
Seuraavaksi on lisättävä tiedoston /etc/lighttpd/lighttpd.conf server.modules-listaan "mod_fastcgi".
Samaan tiedostoon on myös lisättävä seuraavat rivit (tai muokkatava ne tähän muotoon jos tämänkaltaiset rivit jo löytyvät tiedostosta):
## # which extensions should not be handle via static-file transfer # # .php, .pl, .fcgi are most often handled by mod_fastcgi or mod_cgi static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket" )) )
Lopuksi tallennetaan muutokset ja käynnistä palvelin uudelleen komennolla
# /etc/init.d/lighttpd restart
Salasanasuojatut hakemistot
Myös Lighttpd:ssä voi suojata hakemistoja Apachen tapaan. Koska emme halua tallentaa salasanoja selväkielisenä, lainaamme Apachen työkaluista htdigestiä. Asennetaan ensin Apachen työkalut, jotka löytyvät esimerkiksi Debianissa ja Ubuntussa paketista apache2-utils:
# apt-get install apache2-utils
Seuraavaksi luodaan haluttu tunnus, salasana ja realm, jossa se on voimassa:
# htdigest -c /etc/lighttpd/.lighttpdpassword 'Authorized users only' tunnus
Ja lisätään tiedoston /etc/lighttpd/lighttpd.conf server.modules-listaan "mod_auth", ja samaan tiedostoon johonkin kohtaan vielä seuraavat määritykset:
# mod_auth auth.debug = 2 auth.backend = "htdigest" auth.backend.htdigest.userfile = "/etc/lighttpd/.lighttpdpassword" auth.require = ( "/secret/" => ( "method" => "digest", "realm" => "Authorized users only", "require" => "valid-user" ))
Jossa "/secret/" on hakemisto palvelimen juurihakemiston (document-root:n) suhteen ja johon pääsemiseksi vaaditaan salasana.
Tallenna muutokset ja käynnistä palvelin uudelleen.
SSL
Koska salasanasuojaus on hieman kyseenalainen, mikäli salasanat lähetetään Internetin läpi selkokielisenä joten asetetaan vielä SSL-salaus.
Asenna openssl-paketti, mikäli se ei ole jo valmiina jonkin toisen paketin riippuvuutena. Esimerkiksi Debianissa ja Ubuntussa komennolla
# apt-get install openssl
Luodaan seuraavfaksi sertifikaatti, joka voimassa 365 vuorokautta:
# mkdir /etc/lighttpd/ssl/ # openssl req -new -x509 -keyout /etc/lighttpd/ssl/esimerkkinimi.pem -out /etc/lighttpd/ssl/esimerkkinimi.pem -days 365 -nodes
Vastaile kysymyksiin mitä haluat. Itse luodussa sertifikaatissa niillä ei ole juuri merkitystä.
Lisää lopuksi /etc/lighttpd/lighttpd.conf-tiedostoon rivit:
# SSL $SERVER["socket"]== "<ip-osoite tai hostname tähän!>:443" { server.document-root = "/var/www" ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd/ssl/esimerkkinimi.pem" }
Ja taas asetukset tulevat voimaan vasta palvelimen uudelleenkäynnistyksen jälkeen.
Nyt sivut pitäisi näkyä myös osoitteessa https://localhost/