Hace unos días tuve que montar un servidor web con soporte de php y Mysql para poner un blog. La maquina no era muy buena así que en lugar de poner Apache como servidor Web me decidí a poner Lighttpd.

Antes que nada una reseña de las principales características según sus creadores . Seguridad, rapidez, cumplimiento y flexibilidad son las principales ventajas de lighttpd . Con una pequeña huella de memoria en comparación con otros servidores web , la gestión eficaz de la carga de la CPU, y un conjunto de funciones avanzadas (FastCGI, SCGI, Auth,compresión de salida, reescritura de URL y muchos más) lighttpd es la solución perfecta para cada servidor que está sufriendo problemas de  carga. Es Open Source y se distribuye  bajo la licencia BSD revisada.

Como siempre lo haremos desde la consola ya que es el medio que mas facilmente tenemos disponible ademas de su facilidad para el acceso remoto.

El proceso de instalación es distinto al del Apache  así que explicare aqui los pasos que realice para hacer la instalación

Primero instalamos mysql con el siguiente comando

urpmi mysql mysql-client

una vez que se instala mysql tiene deshabilitado el uso en red asi que editaremos el archivo /etc/my.cnf  cambiando en donde dice

skip-networking

por

#skip-networking

el símbolo # le indica a mysql que la linea esta comentada así que la debe ignorar. Finalmente cambiamos la clave de root y arrancaremos mysql usando

mysqladmin -u root password
/etc/init.d/mysql start

Instalamos y arrancamos Lighttpd usando:

urpmi lighttpd
/etc/init.d/lighttpd start

Instalamos PHP usando:

urpmi php-fcgi

Editamos el archivo /etc/php.ini y modificaremos la clave cgi.fix_pathinfo para ponerla en  1

cgi.fix_pathinfo=1

Luego editamos el archivo /etc/lighttpd/lighttpd.conf y tenemos que activar el modulo mod_fastcgi sacandole el símbolo de comentario a la linea correspondiente

server.modules = (
"mod_rewrite",
#                                            "mod_redirect",
#                                            "mod_alias",
"mod_access",
#                                            "mod_cml",
#                                            "mod_trigger_b4_dl",
#                                            "mod_auth",
#                                            "mod_status",
#                                            "mod_setenv",
"mod_fastcgi",
#                                            "mod_proxy",
#                                            "mod_simple_vhost",
#                                            "mod_evhost",
#                                            "mod_userdir",
#                                            "mod_cgi",
#                                            "mod_compress",
#                                            "mod_ssi",
#                                            "mod_usertrack",
#                                            "mod_expire",
#                                            "mod_secdownload",
#                                            "mod_rrdtool",
"mod_accesslog" )

finalmente con figuraremos el modulo mod_fastcgi descomentando la sección que se ve a continuación

fastcgi.server             = ( ".php" =>
( "localhost" =>(
"socket" => "/var/run/lighttpd/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-fcgi"
)))

Seguramente el directorio /var/run/lighttpd no existe así que lo creamos usando

mkdir /var/run/lighttpd
chown apache:apache /var/run/lighttpd

Reiniciamos Lighttpd con

/etc/init.d/lighttpd restart

Para verificar que todo quedo bien instalado pondremos un archivo llamado info.php en la carpeta  /var/www/html con el siguiente contenido.

phpinfo();
?>
Abrimos el navegador de internet y navegamos la URL http://direccion del server/info.php y deberiamos ver algo asi

El ultimo paso que queda es instalar soporte de mysql para php usando

urpmi php-mysql

Reiniciamos Lighttpd con

/etc/init.d/lighttpd restart

Volvemos a abrir el navegador de internet y navegamos la URL http://direccion del server/info.php y deberiamos ver en la parte media de la pantalla el modulo de mysql como se ve en la siguiente imagen