Versión 2.0 del Servidor HTTP Apache

Este documento explica cómo compilar e instalar Apache en sistemas Unix y tipo Unix. Si lo que busca es información sobre cómo compilar e instalar Apache en Windows, consulte la sección Usar Apache en Microsoft Windows. Para otras plataformas, consulte la documentación sobre plataformas.
El entorno de configuración e instalación de Apache
    2.0 ha cambiado completamente respecto al de Apache 1.3. Apache
    1.3 usaba un conjunto de scripts a medida para conseguir una
    instalación fácil. Apache 2.0 usa libtool y
    autoconf para crear un entorno más parecido al
    de muchos otros proyectos Open Source.
Si lo que quiere hacer es actualizar su servidor Apache desde una versión menor (por ejemplo, desde la 2.0.50 a la 2.0.51), pase directamente a la sección de actualización.
 Visión general del proceso para
    impacientes
 Visión general del proceso para
    impacientes Requisitos
 Requisitos Descargar
 Descargar Descomprimir
 Descomprimir Configuración de la estructura de
directorios
 Configuración de la estructura de
directorios Compilar
 Compilar Instalar
 Instalar Personalizar
 Personalizar Comprobar que la instalación
funciona
 Comprobar que la instalación
funciona Actualizar una instalación
prrevia
 Actualizar una instalación
prrevia| Descargar | $ lynx http://httpd.apache.org/download.cgi | 
| Descomprimir | $ gzip -d httpd-2_0_NN.tar.gz | 
| Ejecutar el script configure | $ ./configure --prefix=PREFIX | 
| Compilar | $ make | 
| Instalar | $ make install | 
| Personalizar | $ vi PREFIX/conf/httpd.conf | 
| Comprobar que la instalación funciona | $ PREFIX/bin/apachectl start | 
NN hay que reemplazarlo por el número de la
    versión menor, y PREFIX hay que reemplazarlo por la
    ruta en la que se va a instalar Apache. Si no especifica
    ningún valor en PREFIX, el valor que se usa
    por defecto es /usr/local/apache2.
Cada parte del proceso de configuración e instalación se describe detalladamente más abajo, empezando por los requisitos para compilar e instalar Apache.
Requisitos necesarios para compilar Apache:
PATH debe
      contener la ubicación en la que se encuentran las
      herramientas básicas para compilar, como por ejemplo
      make.ntpdate o
      xntpd, que están basados en el protocolo
      Network Time Protocol (NTP). Consulte el grupo de noticias comp.protocols.time.ntp
      y el sitio web de NTP
       para obtener más información sobre NTP y los
      servidores públicos de tiempo.apxs o dbmmanage (que
      están escritos en Perl) es necesario el intérprete de
      Perl 5 (las versiones 5.003 o posteriores son suficientes). Si
      el script configure no encuentra ese
      intérprete tampoco pasa nada. Aún puede compilar e
      instalar Apache 2.0. Lo único que ocurrirá es que esos
      scripts de soporte no podrán ser usados. Si usted tiene
      varios interpretes de Perl instalados (quizás Perl 4 porque
      estaba ya incluido en su distribución de Linux y Perl 5
      porque lo ha instalado usted), entonces se recomienda usar la
      opción --with-perl para asegurarse de que
      configure usa el intérprete
      correcto.Puede descargar Apache desde la sección de
    descargas del sitio web de Apache el cual tiene varios
    mirrors. Para la mayoría de los usuarios de Apache que tienen
    sistemas tipo Unix, se recomienda que se descarguen y compilen el
    código fuente. El proceso de compilación (descrito
    más abajo) es fácil, y permite adaptar el servidor
    Apache a sus necesidades. Además, las versiones de
    disponibles en archivos binarios no están siempre actulizadas
    con las últimas modificaciones en el codigo fuente. Si se
    descarga un binario, siga las instrucciones contenidas en el
    archivo INSTALL.bindist incluido en la
    distribución
Después de la descarga, es importante que verifique que el archivo descargado del servidor HTTP Apache está completo y sin modificaciones. Esto puede hacerlo comparando el archivo descargado (.tgz) con su firma PGP. Instrucciones detalladas de cómo hacer esto están disponibles en la sección de descargas junto con un ejemplo de cómo usar PGP.
Extraer el código fuente del archivo .tgz que acabada de descargar es muy fácil. Ejecute los siguientes comandos:
      $ gzip -d httpd-2_0_NN.tar.gz
       $ tar xvf httpd-2_0_NN.tar
Estos comandos crearán un nuevo directorio dentro del
    directorio en el que se encuentra y que contendrá el
    código fuente de la distribución. Debe cambiarse a ese
    directorio con cd para proceder a compilar el
    servidor Apache.
El siguiente paso es configurar la estructura de directorios
    para su plataforma y sus necesidades personales. Esto se hace
    usando el script configure incluido en el directorio
    raiz de la distribución que acaba de descargar. (Los
    desarrolladores que se descarguen la versión del CVS de la
    estructura de directorios necesitarán tener instalados
    autoconf y libtool, y necesitarán
    ejecutar buildconf antes de continuar con los
    siguientes pasos. Esto no es preciso para las versiones
    oficiales.)
Para configurar la estructura de directorios a partir del
    código fuente usando las opciones por defecto, solo tiene que
    ejecutar ./configure. Para cambiar las opciones por
    defecto, configure acepta una serie de variables y
    opciones por la línea de comandos.
La opción más importante es --prefix que
    es el directorio en el que Apache va a ser instalado después,
    porque Apache tiene que ser configurado para el directorio que se
    especifique para que funcione correctamente.  Es posible lograr un
    mayor control del lugar donde se van a instalar los ficheros de
    Apache con otras opciones de
    configuración.
En este momento, puede especificar que características
    o funcionalidades quiere incluir en Apache activando o
    desactivando módulos.  Apache viene con
    una selección
    básica de módulos incluidos por defecto.  Se pueden
    activar otros módulos usando la opción
    --enable-module, donde module
    es el nombre del módulo sin el mod_ y
    convirtiendo los guiones bajos que tenga en guiones normales.
    También puede optar por compilar módulos como objetos dinámicos compartidos (DSOs) --
    que pueden ser activados o desactivados al ejecutar -- usando la
    opción --enable-module=shared.  De
    igual manera, puede desactivar alguno de los módulos que
    vienen por defecto en la selección basica con la opción
    --disable-module.  Tenga cuidado cuando
    use estas opciones, porque configure no le
    avisará si el módulo que especifica no existe;
    simplemente ignorará esa opción.
Además, a veces es necesario pasarle al script
    configure información adicional sobre
    donde está su compilador, librerías o ficheros de cabecera.  Esto
    se puede hacer, tanto pasando variables de entorno, como pasándole
    opciones a configure a través de la
    línea de comandos.  Para más información, consulte
    la página de ayuda de configure.
Para que se haga una idea sobre las posibilidades que tiene,
    aquí tiene un ejemplo típico que configura Apache para
    la ruta /sw/pkg/apache con un compilador y unos flags
    determinados, y además, con dos módulos adicionales
    mod_rewrite y mod_speling para
    cargarlos después a través del mecanismo DSO:
      $ CC="pgcc" CFLAGS="-O2" \
       ./configure --prefix=/sw/pkg/apache \
       --enable-rewrite=shared \
       --enable-speling=shared
Cuando se ejecuta configure se comprueban
    que características o funcionalidades están disponibles
    en su sistema y se crean los Makefiles que serán usados luego
    para compilar el servidor. Esto tardará algunos minutos.
La información sobre todas las opciones de
    configure está disponible en la
    página de ayuda de configure.
Ahora puede compilar las diferentes partes que forman Apache simplemente ejecutando el siguiente comando:
$ make
Por favor, tanga un poco de paciencia ahora, porque una configuración básica tarda aproximadamente 3 minutos en compilar en un Pentium III con un sistema Linux 2.2, pero este tiempo puede variar considerablemente en función de su hardware y del número de módulos que haya seleccionado.
Ahora es el momento de instalar el paquete en el diretorio
    elegido en PREFIX (consulte la opción
    --prefix más arriba) ejecutando:
$ make install
Si usted está solo actualizando una instalación anterior, la nueva instalación no sobreescribirá sus ficheros de configuración ni otros documentos.
El paso siguiente, es personalizar su servidor Apache editando
    los ficheros de configuración
    que están en PREFIX/conf/.
$ vi PREFIX/conf/httpd.conf
échele un vistazo al Manual de Apache que está en docs/manual/ o consulte en http://httpd.apache.org/docs/2.0/ la versión más reciente de este manual y la Guia de Referencia de todas las directivas de configuración disponibles.
Ahora puede iniciar su servidor Apache cuando quiera ejecutando:
$ PREFIX/bin/apachectl start
y entonces debe poder acceder al documento que tenga
    especificado por defecto usando el siguiente URL:
    http://localhost/. El documento que verá
    estará en DocumentRoot y
    casi siempre estará en PREFIX/htdocs/.
    Si quiere parar el servidor, puede
    hacerlo ejecutando:
$ PREFIX/bin/apachectl stop
El primer paso para actualizar una instalación anterior es
    leer las especificaciones de la versión y el fichero
    CHANGES en la distribución de código fuente
    que ha descargado para encontrar los cambios que puedan afectar a
    su instalación actual. Cuando el cambio sea entre versiones
    mayores (por ejemplo, de la 1.3 a la 2.0 o de la 2.0 a la 2.2),
    entonces es más probable que haya diferencias importantes en
    la compilación y en la ejecución que necesitarán
    ajustes manuales. Todos los módulos necesitarán
    también ser actualizados para adaptarse a los cambios en el
    interfaz de programación (API) de módulos.
La actualización cuando el cambio es entre versiones
    menores (por ejemplo, de la 2.0.55 a la 2.0.57) es más
    fácil.  El proceso make install no
    sobreescribirá ninguno de los documentos existentes, archivos
    log, o archivos de configuración.  Además, los
    desarrolladores hacen todos los esfuerzos posibles para evitar
    cambios que generen incompatibilidades en las opciones de
    configure, en la configuración de la
    ejecución o en la interfaz de programación de
    módulos. En la mayor parte de los casos debe poder usar un
    comando configure idéntico, un fichero de
    configuracién idéntico, y todos sus módulos deben
    seguir funcionando.  (Esto es válido solo para versiones
    posteriores a la 2.0.41; las versiones anteriores contienen
    cambios incompatibles.)
Si la actualización es entre versiones menores (por
    ejemplo, de la 2.0.55 a la 2.0.57), lo primero que debe hacer es
    encontrar el fichero config.nice en el directorio
    build de la instalación antigua de Apache que
    desea actualizar o en el directorio raiz de la estructura de
    directorios con las fuentes del servidor que uso para su anterior
    instalación. Ese fichero contiene el comando
    configure exacto que usó originalmente
    para configurar la estructura de directorios de las fuentes de
    Apache.  Para actualizar su instalación de una versión a
    la siguiente, solo tiene que copiar el archivo
    config.nice a la estructura de directorios que
    contiene las fuentes de la nueva versión de Apache, editarlo,
    hacer cualquier cambio que desee, y ejecutar:
    $ ./config.nice
    $ make
    $ make install
    $ PREFIX/bin/apachectl stop
    $ PREFIX/bin/apachectl start
    
--prefix diferente y un puerto diferente (modificando
    la directiva Listen)
    para comprobar que no existe ninguna incompatibilidad antes de
    hacer la actualización definitiva.