- Estréllate y Arde - https://www.estrellateyarde.org -
Migrar de Apache a Lighttpd en Linux
La tecnología LAMP (Linux, Apache, PHP, MySQL) es actualmente la más extendida para montar servidores web pero existen otros servidores HTTP que pueden reemplazar a Apache, como Lighttpd (lighttpd.net, lighty para los amigos, ligerito), diseñado para el "problema c10k" (manejar 10.000 conexiones simultáneas).
Lighttpd es rápido (su lema es Fly light) y consume muy pocos recursos y está ganando popularidad gracias a su buen desempeño en sitios web enormemente exigentes como YouTube. Si tenemos instalado LAMP no tendremos muchas dificultades en migrar a LLMP (Linux, Lighttpd, PHP, MySQL). Veamos cómo hacerlo.
server.dir-listing = "enable"
por:
server.dir-listing = "disable"
server.tag = "lighttpd"
# lighttpd -t -f /etc/lighttpd/lighttpd.conf
Syntax OK
# /etc/init.d/lighttpd restart
# netstat -ntulp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name ... tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 4367/mysqld tcp6 0 0 :::80 :::* LISTEN 20249/lighttpd tcp6 0 0 :::22 :::* LISTEN 4277/sshd ...
Recursos
cgi.fix_pathinfo=0
por:
cgi.fix_pathinfo=1
index-file.names = ( "index.php", "index.html", "index.htm", "default.htm", "index.lighttpd.html" )
# lighty-enable-mod fastcgi
que lo que hace es crear el enlace simbólico:
/etc/lighttpd/conf-enabled/10-fastcgi.conf
que apunta a:
/etc/lighttpd/conf-available/10-fastcgi.conf
# /etc/init.d/lighttpd restart
<?php phpinfo(); ?>
y entraremos en la URL 127.0.0.1/info.php en el navegador. Si todo está correcto aparecerá la página Info de PHP.
# /etc/init.d/lighttpd restart
Si nuestro Lighttpd tiene que servir varios dominios (por ejemplo www.domain.com y www.otherdomain.com) configuraremos en /etc/lighttpd/lighttpd.conf un VirtualHost para cada uno de ellos:
# redireccionamos de http://domain.com a http://www.domain.com $HTTP["host"] == "domain.com" { url.redirect = ( "^/(.*)" => "http://www.domain.com/$1" ) } # configuramos http://www.domain.com $HTTP["host"] == "www.domain.com" { server.document-root = "/var/www/domain/" server.name = "www.domain.com" dir-listing.activate = "disable" server.errorlog = "/var/log/lighttpd/domain.com.error.log" accesslog.filename = "/var/log/lighttpd/domain.com.access.log" # reglas rewrite para permalinks de WordPress url.rewrite = ( "^/(wp-.+).*/?" => "$0", "^/(.*)\.(.+)$" => "$0", "^/(.+)/?$" => "/index.php/$1" ) }
Estas reglas rewrite son para WordPress y equivalen al archivo .htaccess generado por WordPress para Apache, cuyo contenido suele ser:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Además tenemos que activar los módulos mod_redirect y mod_rewrite descomentando las líneas correspondientes:
server.modules = ( "mod_access", ... "mod_redirect", "mod_rewrite", ... # "mod_evasive" )
Para aplicar los cambios reiniciamos Lighttpd:
# /etc/init.d/lighttpd restart
Article printed from Estréllate y Arde: https://www.estrellateyarde.org
URL to article: https://www.estrellateyarde.org/discover/migrar-de-apache-a-lighttpd-en-linux
Click here to print.
Copyright © 2010 Estrellate y Arde