Lighttpd (Česky)

From ArchWiki
Revision as of 09:55, 15 June 2012 by Kynikos.bot (Talk | contribs) (rm temporary i18n template)

Jump to: navigation, search


Úvod

lighttpd je bezpečný, rychlý a velmi flexibilní web-server, který byl optimalizovaný pro vysoký výkon. V porovnání s jinými webservery má velmi nízké nároky na paměť a na rychlost procesoru. Podporuje například FastCGI, CGI, Auth, Output-Compression, URL-Rewriting a plno dalších vymoženstí.
Zdroj: Webová stránka projektu lighttpd.

Instalace

Pro instalaci Lighttpd spusťte:

# pacman -S lighttpd

Konfigurace

Základní nastavení

Hlavní konfigurační soubor tohoto daemona je: /etc/lighttpd/lighttpd.conf. Ve výchozím nastavení by se měla zobrazovat zkušební testovací stránka.

Pro kontrolu chyb ve vašem lighttpd.conf souboru můžete použít tento příkaz:

$ lighttpd -t -f /etc/lighttpd/lighttpd.conf

Jako kořenový adresář je v konfiguračním souboru nastaven /srv/http/.

Prevděpodobně budete muset přidat nového uživatele a skupinu http, pokud ji ještě nemáte vytvořenou. Tento uživatel musí mít právo zápisu do /var/log/lighttpd. Postup, jak nastavit správného vlastníka a skupinu složky je následující:

# groupadd http
# adduser http
# chown -R http /var/log/lighttpd

Pro otestování správnosti instalace

# /etc/rc.d/lighttpd start
# touch /srv/http/index.html
# chmod 755 /srv/http/index.html
# echo 'Hello World!' >> /srv/http/index.html

Následně zadejte do svého prohlížeče adresu localhost a měli byste vidět testovací stránku s nápisem 'Hello World!'.

Pravděpodobně si budte chtít přidat lighttpd do pole daemonů, kteří se automaticky spouští při startu počítače. To provedete přidáním lighttpd do souboru /etc/rc.conf mezi DAEMONS (...)

FastCGI

Instalace fcgi

# pacman -S fcgi

Následně byste měli mít funkční podporu pro fcgi. Ten kdo by chtěl mít podporu Ruby on Rails, ať pokračuje dále. Template:Box Note

Následující nastavení je potřeba přidat do konfiguračního souboru /etc/lighttpd/lighttpd.conf

server.modules = (
    "mod_access",
    "mod_fastcgi",
    "mod_accesslog"
)

server.indexfiles = ( "dispatch.fcgi", "index.php" ) #dispatch.fcgi if rails specified

server.error-handler-404   = "/dispatch.fcgi" #too
fastcgi.server = (
".fcgi" =>
  ( "localhost" =>
    (
      "socket" => "/tmp/rails-fastcgi.socket",
      "bin-path" => "/path/to/rails/application/public/dispatch.fcgi"
    )
  ),
".php" =>
  ( "localhost" =>
    (
      "socket" => "/tmp/php-fastcgi.socket",
      "bin-path" => "/usr/bin/php-cgi"
    )
  )
)

Pro podporu PHP nebo Ruby on Rails pokračujte dále.

PHP

Nainstalujte PHP a ostatní potřebné moduly,

# pacman -S php php-cgi

Zkontrolujte, jestli php-cgi běží tak, jak má php-cgi --version

PHP 5.3.1 with Suhosin-Patch (cgi-fcgi) (built: Nov 23 2009 21:12:29)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

Pokud dostanete podobný výstup, máte PHP nainstalováno správně.

Poznámka: Mějte prosím na paměti, že pokud se vám zobrazí chyby jako No input file found po zobrazení vašich PHP souborů, ujistěte se, že máte v /etc/php/php.ini zapnuty tyto direktivy:

cgi.fix_pathinfo=1
open_basedir = /home/:/tmp/:/usr/share/pear/:/another/path:/second/path

A že jsou soubory čitelné

# chmod -R 755

Ruby on Rails

Vzhledem k tomu, že chcete používat Ruby on Rails, předpokládáme, že máte v počítači nainstalováno ruby. Pokud ne, nainstalujte jej.

Dále potřebujeme stáhnout rubygems a ruby-fcgi. Mrkněte do AURu

Rubygems

$ sudo pacman -S rubygems

ruby-fcgiAUR

$ wget https://aur.archlinux.org/packages/ruby-fcgi/ruby-fcgi/PKGBUILD
$ makepkg
$ sudo pacman -U ruby-fcgi-x.x.x-x-xxx.pkg.tar.gz

Teď už máme rubygems. Pojďme ještě nainstalovat rails!

$ sudo gem install rails --include-dependencies
$ sudo gem install fcgi --include-dependencies
Pokud výsledek skončí chybou, spusťte
# pacman -S fcgi
nebo si stáhněte zdrojové kódy a vše si zkompilujte sami.
$ wget http://fastcgi.com/dist/fcgi.tar.gz
$ tar zxvf fcgi.tar.gz
$ cd fcgi-2.4.0
$./configure
$ make
# make install

A znovu spusťte gem pro instalaci.

Zkontrolujte, jeslti náhodou nemáte v systému více jak jeden soubor fcgi.so

$ find /usr -name fcgi.so

Pokud ano, odstraňte ten, který nemá ve své cestě "/site_ruby/".

Pro dokumentaci jak používat Ruby on Rails navštivte RubyOnRails.org.