09 enero 2008

Cómo tener dos versiones de apache corriendo en la misma máquina

Aunque parece una tontería el tener dos versiones de apache corriendo en la misma máquina nos ha solucionado un problema que teníamos con dos servicios diferentes que teníamos que proporcionar.

Teníamos que proporcionar un servicio normalmente en el puerto 80 y en el puerto 81. A primera vista puede parecer que con servir en los dos puertos y configurando hosts virtuales sería suficiente, pero en realidad nos daban problemas al escribir los logs, acceder, etc... Decidimos tener dos instancias de apache separadas, una la que viene por defecto con el sistema, otra la descargamos de la web y la compilamos.

Los pasos fueron muy sencillos:

  • Descargamos la última versión estable de apache
  • Descargamos la última versión estable de php
  • Descomprimimos los directorios y les cambiamos los permisos a un usuario sin privilegios para realizar la compilación.
  • Configuramos la compilación de apache con esta línea: ./configure --prefix=/usr/local/customapache2 --enable-so --with-mpm=prefork ; seguidamente ejecutamos make y make install (como root)
  • Compilamos la compilación de php con esta línea: ./configure --prefix=/usr/local/customphp --without-pdo-sqlite --without-sqlite --with-apxs2=/usr/local/customapache2/bin/apxs --enable-sysvsem --enable-sysvshm; seguidamente ejecutamos make y make install (como root)
  • Finalmente escribimos las configuraciones que necesitábamos y lo arrancamos con /usr/local/customapache2/bin/apachectl -k start

No hay comentarios: