Instalación y configuración de Lighttpd con PHP + FastCGI

 

lighttpd (pronunciado lighty) es un servidor web diseñado para ser rápido, seguro, flexible, y fiel a los estándares.

Está optimizado para entornos donde la velocidad es muy importante, y por eso consume menos CPU y memoria RAM que otros servidores. Por todo lo que ofrece, lighttpd es apropiado para cualquier servidor que tenga problemas de carga.

lighttpd es software libre y se distribuye bajo la licencia BSD. Funciona en GNU/Linux yUNIX de forma oficial. Para Microsoft Windows actualmente hay una distribución conocida como Lighttpd For Windows mantenida por Kevin Worthington.

 

 

 

 

Descargamos el codigo:

cd /usr/src

wget  http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.30.tar.gz

Descomprimimos

tar -xzvf lighttpd-1.4.30.tar.gz

Accedemos a la carpeta

cd lighttpd-1.4.30

Creamos la carpeta donde lo vamos a instalar.

 mkdir /usr/local/lighttpd

La configuración será por defecto, lo instalaremos en /usr/local/lighttpd  y deshabilitar ipv6, zlib y bzip2

./configure --prefix=/usr/local/lighttpd --without-zlib --without-bzip2 --disable-ipv6

Si al compilar os salta el siguiente error:

configure: error: pcre-config not found, install the pcre-devel package or build with –without-pcre

es porque os faltan las librerías libpcre, las instalamos.

apt-get install libpcre3 libpcre3-dev

AL final nos aparecera un resumen de la configración, plugins activados y desactivados.

Plugins:

enabled:
mod_access
mod_accesslog
mod_alias
mod_auth
mod_cgi
mod_compress
mod_dirlisting
mod_evhost
mod_expire
mod_extforward
mod_fastcgi
mod_flv_streaming
mod_indexfile
mod_proxy
mod_redirect
mod_rewrite
mod_rrdtool
mod_scgi
mod_secdownload
mod_setenv
mod_simple_vhost
mod_ssi
mod_staticfile
mod_status
mod_trigger_b4_dl
mod_userdir
mod_usertrack
mod_webdav
disabled:
mod_cml
mod_magnet
mod_mysql_vhost

Features:

enabled:
auth-crypt
large-files
regex-conditionals
disabled:
auth-ldap
compress-bzip2
compress-deflate
compress-gzip
network-ipv6
network-openssl
stat-cache-fam
storage-gdbm
storage-memcache
webdav-locks
webdav-properties

Si todo a ido bien…compilamos e instalamos

 make && make install

Creamos un usuario y grupo sin shell para la ejecución del servicio.

# useradd -G lighttpd -s /sbin/nologin -d /var/www/html lighttp
# groupadd lighttpd

Creamos la estructura de logs:

mkdir /var/log/lighttpd

Cambiamos el propietario y el grupo.

 chown lighttpd:lighttpd /var/log/lighttpd

Creamos el la carpeta donde se alojar el fichero de configuración.

mkdir /etc/lighttpd

Copiamos los archivos   de configuración

 cp ./doc/config/lighttpd.conf /etc/lighttpd/
cp -rp doc/config/conf.d/  /etc/lighttpd/
cp ./doc/config/modules.conf  /etc/lighttpd/
cp -rp ./doc/config/vhosts.d/ /etc/lighttpd/

Cabíamos el propietario

chown lighttpd:root /etc/lighttpd/lighttpd.conf

Copiamos el script para arrancar/parar el servicio en init.d

cp ./doc/initscripts/rc.lighttpd /etc/init.d/lighttpd

Damos permisos de ejecución.

chmod u+x /etc/init.d/lighttpd

Comprobamos si podemos acceder al servidor web con la dirección ip de la maquina, en mi caso: http://192.168.1.185


Finalmente vamos a compilar el PHP y confgurar FastCGI

Descargamos PHP

wget http://es2.php.net/get/php-5.3.10.tar.gz

Descomprimimos

tar xvf php-5.3.10.tar.gz

Accedemos

cd cd php-5.3.10/

Instalamos las librerías necesarias.

apt-get install libmysqlclient15-dev libxml2-dev

Configuramos

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --with-mysql=/usr/bin/mysql --with-mysql --enable-ftp --disable-pdo --disable-ctype

Compilamos e instalamos

make && make install

Por ultimo, añadimos la siguiente configuración al fichero: lighttpd.conf

fastcgi.server = ( ".php" =>
                   ( "localhost" =>
                     ( "socket" => "/tmp/fcgi.socket",
                       "bin-path" => "/usr/local/php/bin/php-cgi"
                     )
                   )
                 )

Reiniciamos Lighttpd y ya deberíamos poder visualizar páginas php desde el servidor web:

# /etc/init.d/lighttpd restart

Finalizada la instalación!

un saludo,rokitoh!

 

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *