Lighttpd
Lighttpd, puhekielessä Lighty, on kevyt vaihtoehto Apachelle http-palvelimiin, joissa ei ole tarvetta Apachen hurjalle ominaisuuskirjolle.
PHP
Dynaamisten sivujen käyttö on mahdollista FastCGI:n ja PHP:n avulla. Aluksi on asennettava PHP:n CGI-versio, joka Debian-pohjaisissa jakeluissa löytyy paketista php5-cgi ja asennettaisiin täten komennolla
# apt-get install php5-cgi
Seuraavaksi on lisättävä asetustiedoston /etc/lighttpd/lighttpd.conf server.modules-listaan "mod_fastcgi".
Samaan tiedostoon on myös lisättävä seuraavat rivit:
## FastCGI conf fastcgi.server = ( ".php" => (( "bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket" )) )
Lopuksi tallennetaan muutokset ja käynnistetään 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 Debian-pohjaisissa jakeluissa 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ä, asetetaan vielä SSL-salaus.
Asenna openssl-paketti, mikäli se ei ole jo valmiina jonkin toisen paketin riippuvuutena. Esimerkiksi Debian-pohjaisissa jakeluissa komennolla
# apt-get install openssl
Luodaan seuraavaksi 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/