Versi�n 2.4 del Servidor HTTP Apache
�ste documento hace referencia a la compilaci�n y la instalaci�n del Apache HTTP Server s�lo para los sistemas Unix y tipo Unix. Para la compilaci�n e instalaci�n en Windows ir a Usando Apache HTTP Server con Microsoft Windows y Compilando Apache para Microsoft Windows. Para otras plataformas visite la documentaci�n sobre plataformas.
Apache httpd usa libtool
y autoconf
para crear un entorno de compilaci�n que se parece a muchos otros proyectos de c�digo abierto
Si est� actualizando desde una versi�n menor a la siguiente (por ejemplo, 2.4.8 a 2.4.9), pasa a la secci�n de actualizaci�n.
Descarga | Descarga la �ltima versi�n desde http://httpd.apache.org/download.cgi |
Extraer | $ gzip -d httpd-NN.tar.gz |
Configura | $ ./configure --prefix=PREFIX
|
Compila | $ make |
Instala | $ make install |
Personalizalo | $ vi PREFIX/conf/apache2.conf |
Prueba | $ PREFIX/bin/apache2ctl -k 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:
/httpd_source_tree_root/srclib/apr
y /httpd_source_tree_root/srclib/apr-util
(cerci�rate de que no existen directorios con n�meros de versiones; por ejemplo,
la distribuci�n de APR debe estar en /httpd_source_tree_root/srclib/apr/) y usa el comando
./configure
--con-las-opciones-incluidas-en-apr
.
En algunas plataformas deber�s instalar la parte correspondiente a los paquetes
-dev
para permitir que httpd se genere contra la instalaci�n de la copia de APR y APR-Util.--with-pcre
.En algunas plataformas,
deber�s instalar la correspondiente versi�n -dev
del paquete para permitir a httpd que se genere contra la instalaci�n de la copia del PCRE que se ha instalado.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 elsitio 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 escript
configure
no se encuentra, no podr� usar los
escripts correspondientes que lo necesiten. Pero por supuesto
podr�s compilar y usar Apache httpd.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 actualizadas
con las �ltimas modificaciones en el c�digo 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 del Servidor Apache HTTP que acabada de descargar es muy f�cil. Ejecute los siguientes comandos:
$ gzip -d httpd-NN.tar.gz
$ tar xvf httpd-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 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
ra�z 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.
Llegados a este punto, puede especificar que caracter�sticas
o funcionalidades quiere incluir en Apache activando o
desactivando modules.Apache vine con una amplia
selecci�n de m�dulos incluidos por defecto. Que ser�n compilados como .
Objetos Compartidos (DSOs) Que pueden ser activados
o desactivados en tiempo de ejecuci�n.
Tambi�n puede elegir por compilar m�dulos de forma est�tica usando las opciones
--enable-module=static
.
Se pueden activar otros m�dulos usando la opci�n
--enable-module
, where
module es el nombre del m�dulo sin el
mod_
y convirtiendo los guiones bajos que tenga en
guiones normales. Del mismo modo, puede desactivar los m�dulos con la
opci�n --disable-module
. Tenga cuidado al utilizar esta opci�n, ya que
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, librer�as o ficheros de cabecera. Esto se puede
hacer, tanto pasando variables de entorno, como pasandole opciones
a configure
. Para m�s informaci�n, consulte el manual de
configure
. O use configure
con la
opci�n --help
.
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_ldap
y mod_ldap
para
cargarlos despu�s a trav�s del mecanismo DSO:
$ CC="pgcc" CFLAGS="-O2" \
./configure --prefix=/sw/pkg/apache \
--enable-ldap=shared \
--enable-lua=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 a continuaci�n
para compilar el servidor. Esto tardar� algunos minutos.
Los detalles de todas las opciones de configure
est�n disponibles
en el manual de configure
.
Ahora puede compilar las diferentes partes que forman Apache simplemente ejecutando el siguiente comando:
$ make
Por favor sea paciente llegado a este punto, ya que una configuraci�n b�sica lleva unos minutos para su compilaci�n, y el tiempo puede variar mucho dependiendo de su hardware y del n�mero de m�dulos que haya habilitado para la compilaci�n.(Se recomienda a�adir al make el par�metro -j3 como m�nimo para que vaya m�s r�pido)
Ahora es el momento de instalar el paquete en el diretorio
elegido en PREFIX (consulte m�s arriba la opci�n
--prefix
) ejecutando:
$ make install
Este paso requiere de forma t�pica privilegios de root, ya que el directorio de PREFIX es normalmente un directorio con restricciones de permisos escritura.
Si lo que esta es s�lo actualizando, la instalaci�n no sobreescribir� los archivos de configuraci�n.
Tras la instalaci�n puede personalizarla, editando los
archivos de configuracion en el directorio de
PREFIX/conf/
.
$ vi PREFIX/conf/apache2.conf
�chele un vistazo al Manual de Apache que est� en
PREFIX/docs/manual/
o consulta http://httpd.apache.org/docs/2.4/ para la versi�n m�s
reciente de este manual y su completa
referencia de las directivas de configuracion disponibles.
Ahora puedes ejecutar tu Apache HTTP server ejecutando directamente:
$ PREFIX/bin/apache2ctl -k start
Ahora debe poder acceder a su primer documento
bajo la URL http://localhost/
. La p�gina o documento que ve se encuentra en
DocumentRoot
,
que por norma general casi siempre ser� PREFIX/htdocs/
.
Si quiere parar el servidor, puede hacerlo ejecutando:
$ PREFIX/bin/apache2ctl -k 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 2.0 a 2.2 o de la 2.2 a la 2.4),
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.
Actualizando de una versi�n menor a la siguiente
(por ejemplo, de la 2.2.55 a la 2.2.57) es mas f�cil. El prodeso de realizar el make install
no sobreescribir� ninguno de tus documentos existentes,archivos
log, o archivos de configuraci�n. De hecho, los desarrolladores est�n haciendo los esfuerzos
necerarios para evitar cambios que generen incompatibilidades en las opciones de
configure
, la configuraci�n al ser ejecutado, o el m�dulo de la API
entre versiones menores. 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.
Para actualizar entre versiones menores, empecemos encontrando el archivo de configuraci�n
config.nice
el directorio de instalaci�n
del servidor
o en el directorio raiz del c�digo fuente de tu antigua instalaci�n. Este archivo contendr�
los par�metros exactos para pasarle al
configure
que usaste anteriormente para configurar tus directorios.
Entonces, para actualizar su instalaci�n de una versi�n 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/apache2ctl -k graceful-stop
$ PREFIX/bin/apache2ctl -k 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.Puede pasarle argumentos adicionales a config.nice
,
que se agregar�n a susopciones originales de configure
:
$ ./config.nice --prefix=/home/test/apache --with-port=90
Un gran n�mero de terceros proporcionan sus propias distribuciones empaquetadas del Apache HTTP Server para su instalaci�n en plataformas espec�ficas. Esto incluye las distintas distribuciones de Linux, varios paquetes de Windows de terceros, Mac OS X, Solaris, y muchos m�s.
Nuestra licencia de software no s�lo permite, sino que anima, este tipo de redistribuci�n. Sin embargo, se da lugar a una situaci�n en la que el dise�o y la configuraci�n de los valores predeterminados de la instalaci�n del servidor pueden diferir de lo que se indica en la documentaci�n. Mientras lamentablemente, esta situaci�n no es probable que cambie a corto plazo.
Una descripci�n de estas distribuciones de terceros est� siendo actualizada en el servidor de la WIKI de HTTP Server, y deber�a reflejar el actual estado de �stas distribuciones de terceros. Sin embargo, tendr� que familiarizarse con los procedimientos de gesti�n e instalaci�n de paquetes de su plataforma (SO) en particular.