Jiné http servery

Tento návod vyžaduje základní znalost práce v Terminálu.

Tento návod je určen pro pokročilé uživatele

Pomocí tohoto návodu budete schopni zprovoznit jiné webové servery, než Apache a případně na nich zprovoznit PHP.

Návod byl testován na Ubuntu 12.04 Precise Pangolin.

Lighthttpd

Lighttpd je odlehčený webserver s podporou procházení adresářů (výchozí index), CGI a dalších. Používá ho např. Wikipedia nebo Youtube.

Program se sám spustí při startu systému. Ručně ho můžete spustit z terminálu příkazem /etc/init.d/lighttpd start.

Všechna konfigurace se nastavuje v souboru /etc/lighttpd/lighttpd.conf. Není od věci si původní nastavení zálohovat.
Toto je příklad nastavení

server.modules = (
	"mod_access",
	"mod_alias",
	"mod_compress",
 	"mod_redirect",
#        "mod_rewrite",
	)

Tyto moduly budou používány. Křížek znamená komentář, modul mod_rewrite nebude použit.

server.document-root        = "/var/www" #cesta ke kořenovému adresáři webu na disku
server.errorlog             = "/var/log/lighttpd/error.log" #logovací soubor pro chyby - cesta
server.pid-file             = "/var/run/lighttpd.pid" #soubor pro zápis pid (zabraňuje vícenásobnému spuštění)
server.error-handler-404    = "404.htm" #při chybě 404 bude uživatel přesměrován na stránku ..., můžete použít jakékoliv číslo chyby

index-file.names            = ( "index.php", "index.html", #výchozí stránky, které budou zobrazeny při vstupu do adresáře
                                "index.htm", "default.htm",
                               " index.lighttpd.html" )

url.access-deny             = ( "~", ".inc" ) #takové soubory nepůjdou zobrazit

static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) #takové soubory nejsou statické - jsou zpracovány CGI

## subdomains ##
$HTTP["host"]=="subdomena.domena" { #mění document-root a accesslog pro subdomena
server.document-root = "/var/www/subdomena/"
accesslog.filename   = "/var/log/lighttpd/subdomena.lighttpd.log"
}

## Use ipv6 if available
#include_shell "/usr/share/lighttpd/use-ipv6.pl"

dir-listing.encoding        = "utf-8"  #kódování výchozího indexu
server.dir-listing          = "enable" #výchozí index bude zobrazen, pokud žádný neexistuje; disable nastaví na vypnuto

Spolupráce s php

Nainstalujte balík php5-cgi. Povolíme moduly fastcgi příkazy
lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php

Restartujeme lighttpd. Funkčnost ověříme jakýmkoliv php skriptem.

Odeberte balík lighttpd, popřípadě php5-cgi.

mini-httpd

mini-httpd je minimalistický webový server, který je cílen na provoz prezentace, která nemá výrazný traffic.

Program se sám spustí při startu systému. Ručně ho můžete spustit z terminálu příkazem /etc/init.d/mini-httpd start.

Program se nastavuje v souborech /etc/default/mini-httpd a /etc/mini-httpd.conf

host=localhost #adresa prezentace
data_dir=/usr/share/mini-httpd/html #adresář s prezenací
logfile=/var/log/mini-httpd.log #soubor se záznamem běhu aplikace
pidfile=/var/run/mini-httpd.pid #soubor s PID aplikace (zabraňuje vícenásobnému spuštění)
cgipat=cgi-bin/* #soubory tady budou brány jako CGI skripty

Spolupráce s php

Nastavte cgipat v /etc/mini-httpd.conf a nainstalujte balík php5-cgi.

Odeberte balík mini-httpd, popřípadě php5-cgi.

micro-httpd

micro-httpd je minimalistický webserver obsahující pouze nejzákladnější věci a je určen pouze pro statické stránky. Jeho zdrojový kód obsahuje pouze asi 200 řádek! Jeho praktické využití je sporné.

Program se sám spustí při startu systému. Ručně ho můžete spustit z terminálu příkazem /etc/init.d/micro-httpd start.

Program se nastavuje v souboru /etc/inetd.conf, konkrétně na řádce

www	stream	tcp	nowait nobody:www-data	/usr/sbin/tcpd /usr/sbin/micro-httpd /var/www

Lze nastavit cestu k prezentaci v posledním sloupečku.

Odeberte balík micro-httpd.

Odkazy

  • Poslední úprava: 2013/06/26 15:02
  • autor: Tomáš Losák