Versi�n 2.2 del Servidor HTTP Apache
Este documento explica c�mo compilar e instalar Apache en sistemas Unix y tipo Unix. Para obtener informaci�n sobre c�mo compilar e instalar 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.
Descargar | $ lynx http://httpd.apache.org/download.cgi
|
Descomprimir | $ gzip -d httpd-2_1_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 por defecto que se
toma 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.
Estos son los requisitos necesarios para compilar Apache:
PATH
debe contener la
ubicaci�n donde de encuentran las herramientas b�sicas
para compilar tales como 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.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_1_NN.tar.gz
$ tar xvf httpd-2_1_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 esta
su compilador, librerias o ficheros de cabecera. Esto se puede
hacer, tanto pasando variables de entorno, como pasandole opciones
a configure
a trav�s de la l�nea de
comandos. Para m�s informaci�n, consulte el Manual del script
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 el Manual del script
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.2/ 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 va a conservar la estructura de directorios de su anterior
instalaci�n, la actualizaci�n es m�s f�cil
incluso. El fichero config.nice
que est� en el
directorio raiz de la estructura de directorios antigua contiene
exactamente el comando configure
que usted us�
para configurar la estructura de directorios de Apache. Entonces,
para actualizar su instalaci�n de una vers�on a la
siguinete, solo tiene que copiar el archivo
config.nice
a la estructura de directorios del
c�digo fuente de la nueva versi�n, editarlo, hacer
cualquier cambio que desee, y ejecutarlo :
$ ./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.