enramos

Blog personal de Enrique Ramos Ortiz

Posts etiquetados ‘Servidores Web’

Instalación de Moodle desde repositorios deb (apt-get install moodle)

Publicado por enramos.com en Abril 30, 2009

Hoy he probado a realizar una instalación de Moodle en una distribución base de Linux Mint (basada en Ubuntu Intrepid Ibex) tirando de los repositorios sin tener previamente ni tan siquiera el servidor funcionando.

La idea es hacer instalaciones rápidas y desatendidas de Moodle para uso local y/o particular sin necesidad de configuración específica.

Leer el resto de esta entrada »

Publicado en Plataformas, Proyectos | Etiquetado: , , | Deja un Comentario »

Thin Server Web

Publicado por enramos.com en Enero 15, 2009

Con este título me refiero a los distintos proyectos existentes que engloban todos los componentes necesarios para montar nuestro servidor personal web en un PC. Y digo personal porque no creo que estos paquetes estén optimizados para montar un servidor web en explotación, de hecho quiero recordar haber leído sobre alguno de ellos que viene optimizado para que funcione cualquier plataforma que instalemos, ya que llevan una configuración de directivas lo más permisiva posible.

Personalmente no los uso, y para instalar un “servidor local” hago uso del repositorio Debian utilizando apt-get o aptitude, pero como ya me he visto varias veces revisando estos proyectos (recientemente para instalar uno en un pendrive) voy a dejar un listado que iré completando a medida que me vaya siendo necesario.

De momento, los proyectos que puedo recordar son:

De momento el único que he utilizado en XAMPP por ser multiplataforma, pero también me interesan especialmente aquellos que sean “portables” por lo que no descarto probar algún otro…

Entradas relacionadas:

[maestrosdelweb.com] ~$ Instalando Apache, Mysql y PHP de forma fácil

Publicado en Plataformas | Etiquetado: , , , , , , , , | Deja un Comentario »

Cherokee WebServer y Moodle

Publicado por enramos.com en Enero 10, 2009

Como había anunciado en la entrada anterior, he probado a instalar un servidor web ligero en un portátil antiguo.
Antes de decidirme, he revisado el proceso de instalación en los artículos que dejé el otro día. Tanto para el servidor Cherokee como para el servidor Lighttpd, los paquetes complementarios son los mismos: php5-cgi, php5-mysql y mysql-server.

El paquete php5-common que comentan en alguno de ellos lo omito puesto que este será instalado por dependencias de cualquier paquete que use php5, y he utilizado mysql-server en lugar de mysql-server-5.0 puesto que este es un metapaquete que depende de la última versión, por lo que a día de hoy me instala automáticamente mysql-server-5.0 pero mañana posiblemente me instale mysql-server-6.0 o posterior.

# apt-get install php5-cgi php5-mysql mysql-server [*]

En principio voy a utilizar Cherokee, pero por si me arrepiento, he descargado los paquetes deb y sus dependencias de Lighttpd aunque sin instalar. De esta forma que en cualquier momento pueda desinstalar uno e instalar otro haciendo uso del gestor de paquetes de Debian (siempre y cuando no borre /var/cache/apt/archives con # apt-get clean).

# apt-get -d install lighttpd

Ahora instalamos Cherokee

# apt-get install cherokee

Añadimos a /etc/php5/cgi/php.ini el módulo/extensión mysql

;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
;
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
;   extension=modulename.extension
;
; For example, on Windows:
;
;   extension=msql.dll
;
; … or under UNIX:
;
;   extension=msql.so
;
; Note that it should be the name of the module only; no directory information
; needs to go here.  Specify the location of the extension with the
; extension_dir directive above.

extension=mysql.so

Cambiamos la contraseña de nuestro server mysql (en caso de que al instalar el paquete no lo hayamos hecho).

# mysqladmin -u root password macropassword

Nos vamos al directorio configurado en /etc/cherokee/cherokee.conf, descargamos Moodle (la versión que queramos), descomprimimos y asignamos usuario y grupo del servidor (también designados en cherokee.conf).

# cd /var/www
# wget http://download.moodle.org/stable19/moodle-weekly-19.tgz
# tar xzvf moodle-1.9.3.tgz
# chown www-data.www-data moodle

Probamos en un navegador http://localhost/moodle y si todo ha ido bien ya debemos tener servidor funcionando…. peeero, [*] para que Moodle funcione de forma eficiente necesitamos algunas extensiones más de PHP que no están reflejadas en las guías que he seguido. Para no enrollarme mucho, simplemente voy a listar las que en la instalación que yo he realizado me ha solicitado:

# apt-get intall php5-gd php5-curl php5-xmlrpc

Como hemos descargado nuevas extensiones, debemos volver al archivo /etc/php5/cgi/php.ini y cargarlas allí.

extension=gd.so
extension=curl.so
extension=xmlrpc.so

Lo recomendable es instalar estos paquetes desde el principio, así como cargar las correspondientes extensiones, de manera que nos evitemos tener que estar restaurando servicios (/etc/init.d/cherokee restart).

Si a alguien la instalación le sugiere nuevos módulos que lo diga para incorporarlos a la lista ;o)

Una vez tenemos todas las piezas necesarias instaladas, podemos de nuevo probar el asistente de instalación de Moodle y si todo ha ido bien deberemos ir pasando pantallas sin mayor problema. A parte de esto, lo único que quiero destacar del proceso de instalación de Moodle es la necesidad de un “directorio de datos” con permiso de escritura, que en mi caso he dejado en la ruta “aconsejada” por la instalación.

# mkdir /var/moodledata
# chown www-data.www-data /var/moodledata/

Durante el proceso de instalación de Moodle, en una de las fases me ha salido una ventana para elegir a que ruta deseo guardar el archivo php, como si no reconociera esta extensión por no tener soporte para ella. En realidad lo que está fallando es la configuración del servidor Cherokee, ya que se trata de una máquina muy antigua y para cada petición se demora mucho tiempo.

En principio, para poder terminar la instalación de Moodle he subido el valor de server!timeout a 180, cuando por defecto venía a 60. De esta forma he podido finalizar la instalación pero sigo sin problemas a la hora de navegar por Moodle, concretamente en la carga de hojas de estilos, pero de momento no voy a indagar más en el tema.

Alguna de estas noches en casa, revisaré la configuración a ver de que manera solucionar el problema y cómo optimizar el servidor ya que el resultado obtenido no es apto para trabajar de manera eficiente.

En principio, con la documentación incluida en /usr/share/doc/cherokee/ sería suficiente para configurar y optimizar el server.

Referencias:

  • http://www.cherokee-project.com/doc/cookbook_moodle.html
  • http://www.cherokee-project.com/doc/dev_cherokee.conf.html
  • http://observatorio.cnice.mec.es/modules.php?op=modload&name=News&file=article&sid=369
  • http://enredajo.blogspot.com/2008/08/cherokee-web-con-hosting-virtual.html
  • http://www.linux-magazine.es/issue/34/064-066_LighthttpLM21.crop.pdf

Publicado en Plataformas | Etiquetado: , , | 3 Comentarios »

Servidor web ligero (Cherokee vs Lighttpd)

Publicado por enramos.com en Enero 9, 2009

He estado mirando el tema de los servidores web ligeros para un portátil Toshiba Satellite Pro 4300 Series (4310) que aún guardo, y que aunque parezca mentira utilizo a diario para leer pdf’s, escribir textos, probar aplicaciones ligeras, hacer experimentos de hardware, probar distribuciones ligeras como es el caso reciente de backtrack, bash & script, etc.

Además lo he usado en varias ocasiones como servidor web para poder probar algunas aplicaciones, pero aunque funciona de forma decente con algunas de ellas, con otras se vuelve excesivamente lento, como es el caso de Joomla si mal no recuerdo. He pensado en probar un servidor web ligero, ya que siempre ha tirado de Apache para estas tareas, y es muy probable que sea ahí donde reside el problema…

Tras consultar diversas fuentes he visto que hay varias alternativas entre ellas (sacado de apt):

  • cherokee – extremely fast and flexible web server
  • lighttpd – A fast webserver with minimal memory footprint
  • nginx – small, but very powerful and efficient web server
  • dhttpd – minimal secure webserver without cgi-bin support
  • thttpd – tiny/turbo/throttling HTTP server
  • boa – Lightweight and high performance web server
  • monkey – fast, efficient, small and easy to configure web server
  • webfs – lightweight http server for static content

Seguramente haya más, pero no es mi intención recopilarlos todos, así como tampoco probar ni comparar cada uno de ellos. Simplemente los listo a modo de consulta posterior. Lo único que me interesa es que soporten PHP y MYSQL, y parece que tanto Cherokee como Lighttpd lo hace, al menos eso he visto en los tutoriales que he consultado. La verdad es que no se si definitivamente me decida por uno o por otro, de hecho seguramente con los años (mientras dure mi portátil) termine probando ambos.

[Actualización] He añadido nginx al verlo en una gráfica sobre Benchmarks en la web oficial de Cherokee.

Referencias:

[saghul.net] ~$ HOWTO: Un servidor web ligero: Lighttpd + PHP5 + MySQL5

[foros.hackerss.com]~$ Instalar Cherokee + PHP + Mysql, En Debian Etch, Crea Tu Servidor Web Casero En Debian

[linuxzone.es] ~$ HOW-TO: Servidor web Cherokee + PHP + MySQL

[inmolatus.blogspot.com] ~$ Servidor web en debian etch

[imgeek.net] ~$ Howto: Montando un Servidor web en Debian Lenny

Publicado en Plataformas | Etiquetado: , , , , , | 5 Comentarios »