0% encontró este documento útil (0 votos)
295 vistas11 páginas

Informe Sobre Servidor Web (Apache)

El documento proporciona información sobre Apache, el servidor web más popular. Comenzó como una bifurcación del servidor NCSA httpd y ahora supera a NCSA como el servidor número uno. Apache es un software gratuito y de código abierto que funciona como intermediario entre servidores y clientes para servir páginas web de forma eficiente.

Cargado por

Carlos Barbieri
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
295 vistas11 páginas

Informe Sobre Servidor Web (Apache)

El documento proporciona información sobre Apache, el servidor web más popular. Comenzó como una bifurcación del servidor NCSA httpd y ahora supera a NCSA como el servidor número uno. Apache es un software gratuito y de código abierto que funciona como intermediario entre servidores y clientes para servir páginas web de forma eficiente.

Cargado por

Carlos Barbieri
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Redes Posix 2

Servidor Web Apache


¿Qué es Apache?

Historia sobre Apache


El servidor web Apache comenzó como una bifurcación (un flujo de desarrollo

independiente) del servidor web httpd NCSA creado por Rob McCool en el Centro Nacional

de Aplicaciones de Supercomputación (NCSA). Después de la salida de McCool de NCSA en

1994, se formó una comunidad en línea de individuos llamada Apache Group para

respaldar y mejorar su software a través de la colaboración por correo electrónico. Los

miembros fundadores de Apache Group incluyeron a Brian Behlendorf, Roy Fielding, Rob

Hartill, David Robinson, Cliff Skolnick, Randy Terbush, Robert Thau y Andrew Wilson.

A menos de un año de la formación del Grupo Apache, el servidor Apache superó a NCSA

httpd como el servidor número uno en Internet, y lo sigue siendo hasta el día de hoy. En

marzo de 1999, los miembros del Apache Group formaron The Apache Software

Foundation para proporcionar apoyo organizativo, legal y financiero para el servidor HTTP

Apache.
¿Qué es un servidor web?
Un servidor web es un programa de tipo informático que se encarga de procesar una
aplicación del lado del servidor, cada una de las cuales puede acceder a archivos
almacenados en un servidor físico y usarlos para diferentes propósitos, mediante
conexiones bidireccionales o unidireccionales con la máquina del cliente, tras lo cual se
genera una respuesta del lado del cliente.

El trabajo de un servidor web es servir sitios web en Internet. Para lograr ese objetivo,
actúa como un intermediario entre el servidor y las máquinas de los clientes. Extrae el
contenido del servidor en cada solicitud de usuario y lo envía a la web.

El mayor desafío de un servidor web es servir a muchos usuarios diferentes de la web al


mismo tiempo, cada uno de los cuales solicita diferentes páginas. Los servidores web
procesan archivos escritos en diferentes lenguajes de programación como PHP, Python,
Java y otros.

Los convierten en archivos HTML estáticos y le entregan estos archivos al navegador de los
usuarios de la web. Cuando escuches la palabra servidor web, piensa que es la
herramienta responsable de la comunicación adecuada entre el servidor y el cliente.

Funcionamiento del Servidor web Apache


Aunque llamamos a Apache un servidor web, no es un servidor físico, sino un software que

se ejecuta en un servidor. Su trabajo es establecer una conexión entre un servidor y los

navegadores de los visitantes del sitio web (Firefox, Google Chrome, Safari, etc.) mientras

envían archivos entre ellos (estructura cliente-servidor). Apache es un software

multiplataforma, por lo cual funciona tanto en servidores Unix como en Windows.

Cuando un visitante quiere cargar una página de tu sitio web, por ejemplo la página de

inicio o tu página «Acerca de nosotros», su navegador le envía una solicitud a tu servidor y

Apache le devuelve una respuesta con todos los archivos solicitados (texto, imágenes, etc. )

El servidor y el cliente se comunican a través del protocolo HTTP y Apache es responsable

de garantizar una comunicación fluida y segura entre las dos máquinas.

Apache es altamente personalizable, ya que tiene una estructura basada en módulos. Los

módulos le permiten a los administradores del servidor activar y desactivar funcionalidades

adicionales. Apache tiene módulos de seguridad, almacenamiento en caché, reescritura de

2
URL, autenticación de contraseña y más. También puedes ajustar tus propias

configuraciones del servidor a través de un archivo llamado .htaccess.

Apache vs otros servidores web


Además de Apache, hay muchos otros servidores web. Cada aplicación de servidor web ha

sido creada para un propósito diferente. Si bien Apache es el más utilizado, tiene bastantes

alternativas y rivales.

Apache vs NGINX

Nginx, pronunciado como Engine-X, es una aplicación de servidor web más reciente

lanzada por primera vez en 2004. A la fecha, ha ganado una gran popularidad entre los

propietarios de sitios web. Nginx fue creado para resolver el denominado problema c10k,

lo que significa que un servidor web que utiliza subprocesos para manejar las solicitudes

de los usuarios no puede administrar más de 10,000 conexiones al mismo tiempo.

Apache vs Tomcat

Tomcat es un servidor web desarrollado también por la Apache Software Foundation, por

lo que su nombre oficial es Apache Tomcat. También es un servidor HTTP, sin embargo,

está hecho para aplicaciones Java en lugar de sitios web estáticos. Tomcat puede ejecutar

varias especificaciones diferentes de Java, como Java Servlet, JavaServer Pages (JSP), Java EL

y WebSocket.

Pros y contras de Apache


Un servidor web Apache puede ser una excelente opción para ejecutar tu sitio web en una

plataforma estable y versátil. Sin embargo, también presenta algunas desventajas a las que

debes prestarle atención.

3
Pros:
De código abierto y gratuito, incluso para uso comercial.

Software confiable y estable.

Parches de seguridad regulares y actualizados con frecuencia.

Flexible debido a su estructura basada en módulos.

Fácil de configurar para principiantes.

Multiplataforma (funciona tanto en servidores Unix como en Windows).

Viene listo para trabajar con sitios de WordPress.

Enorme comunidad y soporte fácilmente disponible en caso de cualquier problema.

Contras:
Problemas de rendimiento en sitios web con demasiado tráfico.

Demasiadas opciones de configuración pueden generar vulnerabilidades de seguridad.

Conclusión
Apache es uno de los servidores web más populares que te permite ejecutar un sitio web

seguro sin demasiados dolores de cabeza. Es la opción más común de los emprendedores

en solitario y pequeñas empresas que desean tener presencia en la web.

Puedes instalar un sitio web de WordPress en un servidor web Apache sin ninguna

personalización. Además, Apache funciona excelentemente con muchos otros sistemas de

administración de contenido (Joomla, Drupal, etc.), marcos web (Django, Laravel, etc.) y

lenguajes de programación.

4
Versiones de Apache HTTP Server
● Version 2.4 (Current)

● Version 2.2 (Historical)

● Version 2.0 (Historical)

● Version 1.3 (Historical)

● Trunk (Development / Draft)

Instalación en Fedora / CentOS / Red Hat Enterprise Linux

sudo yum install httpd

sudo systemctl enable httpd

sudo systemctl start httpd

Instalación en Ubuntu / Debian

sudo apt install apache2


sudo service apache2 start

Instalación desde la fuente

Download Download the latest release from [Link]


Extract$ gzip -d [Link]
$ tar xvf [Link]
$ cd httpd-NN
Configure $ ./configure --prefix=PREFIX
Compile $ make
Install $ make install
Customize $ vi PREFIX/conf/[Link]
Test $ PREFIX/bin/apachectl -k start

5
NN debe reemplazarse con el número de versión actual y PREFIX debe reemplazarse con la

ruta del sistema de archivos bajo la cual se debe instalar el servidor. Si no se especifica

PREFIX, el valor predeterminado es /usr /local /apache2.

Descarga

El servidor HTTP Apache se puede descargar desde el sitio de descarga del servidor HTTP

Apache, que enumera varios links. La mayoría de los usuarios de Apache en sistemas tipo

Unix estarán mejor descargando y compilando una versión fuente. El proceso de creación

(descrito a continuación) es sencillo y le permite personalizar su servidor para que se

adapte a sus necesidades. Además, las versiones binarias a menudo no están actualizadas

con las últimas versiones fuente. Si descarga un binario, siga las instrucciones del archivo

[Link] dentro de la distribución.

Después de la descarga, es importante verificar que tiene una versión completa y sin

modificar del servidor HTTP Apache. Esto se puede lograr probando el tarball descargado

con la firma PGP. Los detalles sobre cómo hacer esto están disponibles en la página de

descarga y hay un ejemplo extendido disponible que describe el uso de PGP.

Extracción

Extraer la fuente del tarball del servidor HTTP Apache es una simple cuestión de

descomprimir y luego deshacer:

$ gzip -d [Link]
$ tar xvf [Link]

Esto creará un nuevo directorio bajo el directorio actual que contiene el código fuente para

la distribución. Debería entrar en ese directorio antes de proceder con la compilación del

servidor.

Configurar el árbol de fuentes

6
El siguiente paso es configurar el árbol de fuentes de Apache para su plataforma particular

y requisitos personales. Esto se hace usando el script configure incluido en el directorio raíz

de la distribución. (Los desarrolladores que descarguen una versión inédita del árbol de

fuentes de Apache deberán tener autoconf y libtool instalados y deberán ejecutar

buildconf antes de continuar con los siguientes pasos. Esto no es necesario para las

versiones oficiales).

Para configurar el árbol de origen utilizando todas las opciones predeterminadas,

simplemente escriba ./configure. Para cambiar las opciones predeterminadas, configure

acepta una variedad de variables y opciones de línea de comando.

La opción más importante es la ubicación, prefijo donde se instalará Apache más adelante,

porque Apache debe configurarse para que esta ubicación funcione correctamente. Es

posible un control más preciso de la ubicación de los archivos con opciones de

configuración adicionales.

También en este punto, puede especificar qué características desea incluir en Apache

habilitando y deshabilitando módulos. Apache viene con una amplia gama de módulos

incluidos por defecto. Se compilarán como objetos compartidos (DSO) que se pueden

cargar o descargar en tiempo de ejecución. También puede optar por compilar módulos de

forma estática mediante la opción --enable-module = static.

Los módulos adicionales se habilitan usando la opción --enable-module, dónde módulo es

el nombre del módulo con la cadena mod_ eliminada y con cualquier guión bajo convertido

en un guión. Del mismo modo, puede deshabilitar módulos con la opción --disable-module.

Tenga cuidado al utilizar estas opciones, ya que configure no puede advertirle si el módulo

que especifica no existe; simplemente ignorará la opción.

Además, a veces es necesario proporcionar al script de configuración información adicional

sobre la ubicación de su compilador, bibliotecas o archivos de encabezado. Esto se hace

7
pasando variables de entorno o opciones de línea de comando para configurar. Para

obtener más información, consulte la página del manual de configuración. O invoque

configure usando la opción --help.

Para una breve impresión de las posibilidades que tiene, aquí hay un ejemplo típico que

compila Apache para el árbol de instalación / sw / pkg / apache con un compilador

particular y banderas más los dos módulos adicionales mod_ldap y mod_lua:

$ CC="pgcc" CFLAGS="-O2" \
./configure --prefix=/sw/pkg/apache \
--enable-ldap=shared \
--enable-lua=shared

Construir

Ahora puede construir las distintas partes que forman el paquete Apache simplemente

ejecutando el comando:

$ make

Tenga paciencia aquí, ya que una configuración básica tarda varios minutos en compilarse

y el tiempo variará ampliamente según su hardware y la cantidad de módulos que haya

habilitado.

Instalar

Ahora es el momento de instalar el paquete con el PREFIX de instalación configurado (ver la

opción --prefix arriba) ejecutando en modo root:

8
$ make install

Personalizar

A continuación, puede personalizar su servidor HTTP Apache editando los archivos de

configuración en PREFIX /conf/.

$ vi PREFIX/conf/[Link]

Echa un vistazo al manual de Apache en PREFIX / docs / manual / o consulte

[Link] para obtener la versión más reciente de este manual y

una referencia completa de las directivas de configuración disponibles.

Test

Ahora puede iniciar su servidor HTTP Apache ejecutando inmediatamente:

$ PREFIX/bin/apachectl -k start

A continuación, debería poder solicitar su primer documento a través de la URL http: //

localhost /. La página web que ve se encuentra debajo de DocumentRoot, que

normalmente será PREFIX /htdocs/. Luego, detenga el servidor nuevamente ejecutando:

$ PREFIX/bin/apachectl -k stop

Actualizando

9
El primer paso en la actualización es leer el anuncio de lanzamiento y el archivo CAMBIOS

en la distribución de origen para encontrar cualquier cambio que pueda afectar su sitio. Al

cambiar entre versiones principales (por ejemplo, de 2.0 a 2.2 o de 2.2 a 2.4), es probable

que haya diferencias importantes en la configuración de tiempo de compilación y tiempo

de ejecución que requerirán ajustes manuales. Todos los módulos también deberán

actualizarse para adaptarse a los cambios en la API del módulo.

La actualización de una versión secundaria a la siguiente (por ejemplo, de 2.2.55 a 2.2.57)

es más fácil. El proceso de instalación de make no sobrescribirá ninguno de sus

documentos, archivos de registro o archivos de configuración existentes. Además, los

desarrolladores hacen todo lo posible para evitar cambios incompatibles en las opciones

de configuración, la configuración en tiempo de ejecución o la API del módulo entre

versiones menores. En la mayoría de los casos, debería poder utilizar una línea de

comandos de configuración idéntica, un archivo de configuración idéntico y todos sus

módulos deberían seguir funcionando.

Para actualizar en versiones menores, comience por buscar el archivo [Link] en el

directorio de compilación de su servidor instalado o en la raíz del árbol de origen de su

instalación anterior. Este contendrá la línea de comandos de configuración exacta que usó

para configurar el árbol de origen. Luego, para actualizar de una versión a la siguiente, solo

necesita copiar el archivo [Link] en el árbol de origen de la nueva versión, editarlo

para realizar los cambios deseados y luego ejecutar:

$ ./[Link]
$ make
$ make install
$ PREFIX/bin/apachectl -k graceful-stop
$ PREFIX/bin/apachectl -k start

Puede pasar argumentos adicionales a [Link], que se agregarán a sus opciones de

configuración originales:

10
$ ./[Link] --prefix=/home/test/apache --with-port=90

11

También podría gustarte