Cómo compilar Apache Server en Ubuntu 18.04

En este tutorial quiero mostrar el procedimiento para compilar una versión específica de Apache Server, claro que en los repositorios de todo sistema operativo GNU/Linux podemos encontrar ya el paquete listo para instalar, ¿entonces porqué compilarlo? la respuesta es: ¿y porqué no? No esta demás saber como, quién sabe cuando sea útil un día.

Este será un tutorial de 3 partes, la primera es compilar Apache, la segunda será compilar una versión de php que funcione como un módulo y la tercera es compilar una segunda versión de php en modo FastCGI.

NOTA: Si no tenes intención de utilizar una segunda versión de php en modo FastCGI te podes saltar esas instrucciones.

 

Del siguiente enlace podemos descargar el paquete de Apache, yo en este tutorial voy a utilizar la versión 2.4.29, cuando veamos un comando donde utilice esa versión solo la debes sustituir por la que vos vayas a utilizar.

 

PREPARACIÓN DEL SISTEMA OPERATIVO

Primero instalamos algunas herramientas de compilación necesarias para el procedimiento, ejecutamos el siguiente comando en la terminal:

 

COMPILACIÓN

1. Para ver ordenados vamos a crear una carpeta "www" dentro de /opt, y dentro de www creamos una carpeta con nombre: "tmp"

 

2. Instalar por anticipado los requerimientos de compilación:

 

3. Descomprimir el contenido httpd-2.4.29.tar.gz con el siguiente comando:

 

[Si no vas a utilizar FastCGI saltar al paso 6]
4. Para habilitar FastCGI en Apache primero descargar mod_fcgi 2.3.9 de esta dirección:
http://www-eu.apache.org/dist//httpd/mod_fcgid/mod_fcgid-2.3.9.tar.gz
5. Descomprimir mod_fcgid-2.3.9.tar.gz con el comando:

Dentro de la carpeta mod_fcgid-x.x.x/modules copiar la carpeta fcgid a la carpeta modules de la carpeta httpd-x.x.x

 

6. Descargaremos las librerías APR de Apache de los siguiente enlaces: apr-1.6.3.tar.gz y apr-util-1.6.1.tar.gz. Descomprimimos y renombramos las carpetas apr-x y apr-util-x quitando el numero de la versión. Copiar las dos carpetas a httpd-x.x.x/srclib.

 

7. Dentro de la carpeta httpd-x.x.x ejecutar el siguiente comando para que incluya los componentes que acabamos de copiar:

 

8. Ejecutar el comando configure:

--prefix es la ruta donde se realizará la instalación de los componentes del servidor web.  En este comando habilitamos los componentes necesarios para el funcionamiento y el parámetro --enable-fcgid no es necesario si no vas a utilizar FastCGI.

 

9. Ejecutar los siguiente comandos para realizar la instalación de Apache:

 

10. Comandos para manipular Apache:

 

11. Editar el archivo de configuración /opt/www/apache/conf/httpd.conf:

  • Asegurarse de descomentar los siguientes módulos quitando el símbolo numeral (#):

  • Descomentar ServerName y asignar el valor localhost:80
  • Modificar <Directory "/opt/www/apache/htdocs"> para que quede como:
    • 'Options Indexes FollowSymLinks' cambiar a 'Options Indexes FollowSymLinks Includes ExecCGI'
    • 'AllowOverride None' cambiar a 'AllowOverride All'
  • Modificar DirectoryIndex index.html para que quede con el siguiente contenido:
    DirectoryIndex index.html index.php
  • Copiar el siguiente contenido al final del archivo:

  • Guardar los cambios y salir.

 

12. Reiniciar Apache y verificar que la página "It works" se logre visualizar en http://localhost

 

CONFIGURAR APACHE PARA QUE INICIE COMO SERVICIO

1. Con permisos de administrador vamos a crear el archivo /etc/systemd/system/httpd.service con el siguiente contenido:

 

Recuerden utilizar sus rutas si no utilizan las de este ejemplo. Guardar y cerrar el documento.

 

2. Ejecutar los siguientes comandos en la consola:

 

3. Comandos adicionales:

 

El siguiente tutorial será cómo compilar un versión de php como módulo.

Deja un comentario