Lighttpd (Español) - ArchWiki

# Lighttpd (Español)

This article or section is out of date.

Reason: Este artículo está desactualizado. (Discuss)

Este documento te describirá como configurar Ruby on Rails y PHP en un servidor lighttpd (a través de fastcgi).

#### Instalando lighttpd and fcgi

    pacman -S lighttpd fcgi

Ahora ya tienes lighttpd con soporte para fcgi. Si esto era todo lo que querias, listo, pero los que quieran tener Ruby on Rails y/o PHP deberian continuar.

#### Instalando php-cgi

    pacman -S php php-cgi

Ahora revisa la versión de php-cgi escribiendo php-cgi --version

    PHP 5.2.5 with Suhosin-Patch 0.9.6.2 (cgi-fcgi) (built: Nov 13 2007 20:03:00)
    Copyright (c) 1997-2007 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies

Si tienes una salida similar a esa quiere decir que PHP fue instalado correctamente

Note : Por favor mantén en cuenta que si recibes errores del tipo No input file found luego de intentar accesar a tus arhivos php entonces asegurate de que /etc/php/php.ini tenga las directivas habilitadas

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

#### Ruby on Rails

Considerando que también quieras usar Ruby on Rails, asumo que tu tienes ruby instalado, sino hazlo de la siguiente forma:

    pacman -S ruby

Ahora necesitamos rubygems y ruby-fcgi. Revisa en AUR!.

Rubygems:

    pacman -S rubygems

ruby-fcgi:

Si usas yaourt puedes hacer:

    yaourt -S ruby-fcgi

En caso de que no uses yaourt ni ninguna herramienta para AUR:

    wget https://aur.archlinux.org/packages/ruby-fcgi/ruby-fcgi/PKGBUILD
    makepkg
    pacman -U ruby-fcgi-*.pkg.tar.gz

Si todo salió bien deberiamos tener rubygems. Ahora vamos con rails!

    gem install rails --include-dependencies
    gem install fcgi --include-dependencies

Si esto falla, descarga fcgi y compílalo por ti mismo, de la siguiente forma.

    $ wget http://fastcgi.com/dist/fcgi.tar.gz
    $ tar zxvf fcgi.tar.gz
    $ cd fcgi-2.4.0
    $./configure
    $ make
    # make install

Y repite la instalación de gem.

Recuerda verificar si tienes mas de un fcgi.so de la siguiente forma:

    find /usr -name fcgi.so

Si tienes dos o mas, borra el que no tiene "/site_ruby/" en el path.

Para documentación de como usar Ruby on Rails por favor consulta http://rubyonrails.org.

#### Configuración de /etc/lighttpd/lighttpd.conf

Solo voy a mostrar todo lo que debes cambiar. La configuración está bien comentada y la documentación oficial está en http://lighttpd.net

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

    server.indexfiles = ( "dispatch.fcgi", "index.php" ) #dispatch.fcgi is 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"
        )
      )
    )

Antes de encender el servicio, para asegurarnos que todo este completamente funcional, asegurate de crear el directorio /var/run/lighttpd y configurar el acceso de forma acorde. La instalación de Lighttpd no lo crea automaticamente.

#### Links de Referencia

Lighttpd FAQ

Category:

- Web Server (Español)