Felhasználói eszközök

Eszközök a webhelyen


oktatas:linux:webszerver:lighttpd

< Webszerver

Lighttpd

  • Szerző: Sallai András
  • Copyright © Sallai András, 2011, 2013, 2017
  • Licenc: GNU Free Documentation License 1.3

Telepítés

Telepítéskor ügyeljünk arra, ha egy másik webszerver telepítve van, akkor azzal nincs konfliktusban a csomagkezelőben, azaz feltehető második webszerverként is.

apt-get install lighttpd

A legújabb verzió letölthető innen:

Vezérlés

invoke-rc.d lighttpd start
invoke-rc.d lighttpd stop
invoke-rc.d lighttpd restart

Beállítás példák

Telepítés után kapunk egy /etc/lighttpd könyvtárat. A beállítások a /etc/lighttpd/lighttpd.conf állományból lehetséges.

A dokumentumok helyének gyökere:

server.document-root = "/var/www/html"

A szerver TCP portja:

server.port = 80

Használt modulok megadása:

server.modules = ( "mod_access", "mod_rewrite" )

Hibanaplók helye:

server.errorlog = "/var/log/lighttpd/error.log"

A szerverfolyamat mely felhasználó és csoport nevében fusson:

server.username = "www-data"
server.groupname = "www-data"

Más konfigurációs fájlok beolvasása:

include "mas.types.conf" 

Konfiguráció olvasása egy parancs kimenetéből:

include_shell "/usr/local/bin/parancs.pl" 

Feltételes konfiguráció

A legtöbb beállítás konfigurálható feltételesen, és egymásba ágyazva a következő szintaktika szerint:

  <mező> <operátor> <érték> {
    ...
    <mező> <operátor> <érték> {
      ... beépített: Csak akkor egyezik, ha a szülő is egyezett
    }
  }
  else <mező> <operátor> <érték> {
    ... az ellenben ha rész
  }

A mezők a következők egyike lehet:

Mezőnév Leírás
$HTTP[„cookie”] Sütire (cookie) egyezik
$HTTP[„host”] Gépnévre (host) egyezik
$HTTP[„useragent”] Klienségpre egyezik
$HTTP[„referer”] Hivatkozáson egyezik
$HTTP[„url”] URL-en egyezik. Ha van beépített rész, akkor inner blokknak kell lennie
$HTTP[„querystring”] Lekérő sztringre egyezi, ? után (index.php?module=images)
$HTTP[„remoteip”] Távoli IP-re vagy hálózatra egyezik. IPv6-tal nem működik
$HTTP[„request-method”] Az 1.4.19-es verziótól. A kérés metódusára egyezik
$HTTP[„scheme”] Az 1.4.19-es verziótól. Bejövő kapcsolatok által használt sémákra egyezik http vagy https
$HTTP[„language”] Az 1.4.21-es verziótól. Az Accept-Language fejlécsorra egyezik
$SERVER[„socket”] Socketre egyezik. Az érték formája ip:port. Az IP opcionális.
Csak az egyenlőség (==) támogatott. Használd ezt ha IP/port alapú virtuálhostokat akarsz.
$PHYSICAL[„path”] Az 1.5.0 verziótól (Debianban még nem ez van). Egy fájl fizikai útvonalára egyezik. (file / cgi script)
$PHYSICAL[„existing-path”] Az 1.5.0 verziótól (Debian még nem ez van). Csak létehő fájlokra egyezik a helyi fájlrendszerben. file / cgi script

Az operátor a következők egyike lehet:

Operátor Érték
== szöveg egyenlősége esetén egyezik
!= ha szöveg nem egyenlő, akkor egyezik
=~ perl stílusú szabályos kifejezések esetén az egyezés
!~ perl stílusú szabályos kifejezések esetén a nem egyezés

Példa

A könyvtár listázását tiltjuk a következő helyen /download/

dir-listing.activate = "enable"
$HTTP["url"] =~ "^/download/" {
  dir-listing.activate = "disable" 
}

Tiltva a www.pelda.org minden felhasználónak, aki a 10.0.0.0/8-as hálózatból jön

$HTTP["host"] == "www.pelda.org" {
  $HTTP["remoteip"] != "10.0.0.0/8" {
   url.access-deny = ( "" )
  }
}

Csak a 200.19.1.5 és 210.45.2.7 címről engedjük, www.example.org/admin/ könyvtárhoz való hozzáférést:

$HTTP["host"] == "www.example.org" {
  $HTTP["remoteip"] !~ "^(200\.19\.1\.5|210\.45\.2\.7)$" {
    $HTTP["url"] =~ "^/admin/" {
      url.access-deny = ( "" )
    }
  }
}
oktatas/linux/webszerver/lighttpd.txt · Utolsó módosítás: 2019/08/16 22:07 szerkesztette: admin