Publicado el 15 de Mayo del 2017
2.447 visualizaciones desde el 15 de Mayo del 2017
2,7 MB
19 paginas
Creado hace 12a (16/04/2013)
Curso Mentor Apache
Apache
Unidad 1: Introducción a Apache
En este capítulo aprenderás:
el concepto de servidor web y sus funciones.
el origen y evolución del servidor web Apache2 y sus características mas relevantes.
el protocolo HTTP como conjunto de normas que regulan el mecanismo de intercambio de
mensajes entre el servidor web y el cliente web (navegador).
a utilizar los tipos MIME para la interpretación del contenido de los archivos transferidos
entre servidor y cliente.
Material complementario:
1.
2.
3.
Actividades de la unidad. Archivo U1_Actividades.pdf
Mapa conceptual del capítulo. Archivo U1_mapaconceptual.png
Glosario completo del curso. Archivo glosario.pdf
1 de 31
Introducción
Curso Mentor Apache
Objetivos
Conocer el concepto de servidor web y cuáles son sus funciones.
Conocer los servidores web mas importantes y/o mas utilizados.
Estudiar las características mas relevantes del servidor web Apache.
Conocer el protocolo HTTP, sus funciones y diferentes versiones.
Conocer los tipos MIME y sus funciones.
Conocimientos previos
Es la primera unidad y, por lo tanto, no requiere del alumno ningún requisito previo. Únicamente tener la disponibilidad necesaria
para adquirir los conocimientos teóricos que constituirán la base de todo el curso.
Aunque la unidad parezca muy densa y con mucha información variada, es importante que se asimile correctamente.
Contenidos
Unidad 1: Introducción a Apache
A. Ubuntu y Windows
1.
2.
3.
4.
5.
6.
7.
8.
9.
¿Qué es un servidor web?
1.
Objetivo y Esquema de funcionamiento
Acceso al servidor web
Comparativa entre servidores web
Introducción a Apache2
Un poco de historia
Características generales del servidor Apache 2
Apache: servidor web
El protocolo HTTP
Tipos MIME
B. Fin de unidad
1.
2.
3.
4.
Glosario
Fuentes de información
Resumen final
Autoevaluación
2 de 31
Curso Mentor Apache
Definición
¿Qué es un servidor web?
La wikipedia define el servidor web como:
“Un programa que implementa el protocolo HTTP (hypertext transfer protocol). Este protocolo está diseñado para transferir lo que
llamamos hipertextos, páginas web o páginas HTML (hypertext markup language): textos complejos con enlaces, figuras,
formularios, botones y objetos incrustados como animaciones o reproductores de sonidos.”
Arquitectura del servidor web
La arquitectura utilizada es cliente/servidor, es decir, el equipo cliente hace una solicitud o petición al equipo servidor, y éste atiende
dicha solicitud.
En el equipo cliente se ejecuta una aplicación llamada 'navegador o cliente web' que:
sirve de interfaz con el usuario: atiende sus peticiones, muestra los resultados de las consultas y proporciona al usuario
un conjunto de herramientas que facilitan su comunicación con el servidor.
se comunica con el servidor web: transmite las peticiones de los usuarios.
En el equipo servidor la única tarea es:
atender las peticiones recibidas desde los navegadores o clientes web y hacerlo de forma eficiente y segura. Este es
el caso de los servidores web seguros que solicitan un nombre de usuario y una contraseña para permitir el acceso sólo a
usuarios registrados y por tanto, con permiso para visualizar la página/s.
Un paso mas en la seguridad proporcionada por los servidores web se basa en el establecimiento de conexiones cifradas con el
navegador. Este nivel de seguridad es básico, por ejemplo, para las transacciones comerciales realizadas desde Internet.
Saber más ... sobre la arquitectura de un servidor web
Busca en la web información general sobre servidores web.
3 de 31
Curso Mentor Apache
Objetivo del servidor web
Objetivo y Esquema
El objetivo de un servidor web es servir o suministrar páginas web a los clientes web o navegadores que las solicitan.
Ejemplo:
1.
2.
3.
Un usuario desde el navegador Firefox, al hacer 'click' sobre un enlace a una página web está enviando una solicitud al
servidor web que aloja dicha página para que se la muestre (eso se llama servir la página).
El servidor web si la encuentra la envía y si no la encuentra devuelve al cliente un mensaje de error.
El cliente cuando recibe la página web interpreta el código HTML mostrando las fuentes, colores, imágenes que la
componen, etc, de forma correcta.
Pero el servidor web, además de servir páginas web HTML estáticas, también permite la ejecución de una serie scripts en
diferentes lenguajes de programación, que proporcionan dinamismo a las páginas web. Estos lenguajes son: PHP, CGI, applets de
Java, etc.
Esquema
La figura siguiente muestra el esquema de funcionamiento de un servidor web.
En ella observamos los tres elementos básicos que componen las peticiones web dinámicas:
el cliente que hace la petición
el servidor que atiende la petición
y los datos solicitados mediante la petición
4 de 31
Curso Mentor Apache
Saber más ... sobre paǵinas web
1. Para conocer mejor el concepto de página web puedes acceder a http://es.wikipedia.org/
2. ¿Hay alguna diferencia entre página web y sitio web?
En esta referencia http://www.masadelante.com/faqs/sitio-web puedes comprobar la diferencia entre ambos conceptos.
5 de 31
Curso Mentor Apache
Acceso desde un navegador web
Acceso al servidor web
Para que el navegador pueda llegar al servidor web (ya sea en una red local o en Internet) el servidor debe tener asignada una
dirección IP (Internet Protocol) única que identifica el equipo en la red.
Cuando el navegador hace una petición de página al servidor web utiliza un nombre que identifica al servidor y esta solicitud se
transmite a un servidor DNS. Éste resuelve el nombre y devuelve la dirección IP que corresponde al nombre.
La solicitud del navegador, entonces, se encamina al servidor web correcto.
La información que el usuario proporciona al navegador para conectar con un servidor web se llama URL (Uniform Resource
Locators).
Una URL de solicitud de un recurso consta de:
1.
2.
3.
4.
5.
Protocolo a utilizar: http, https, ftp, ftps,...
// : hace las veces de separador
Servidor: es la dirección IP o el nombre del servidor (FQDN) que contiene el recurso.
Ruta_al_recurso: directorio y subdirectorios del sitio web donde está ubicado el recurso
Recurso: recurso al que se quiere acceder.
Por lo tanto una URL indica la forma de acceder a un recurso utilizando un determinado protocolo de comunicación.
Por ejemplo: la URL http://recursostic.educacion.es/observatorio/web/es/home
Saber más ... sobre algunos términos
FQDN (Fully Qualified Domain Name, Nombre de dominio totalmente cualificado) es un nombre que incluye el nombre del equipo y
el nombre del dominio asociado a esa máquina
6 de 31
Curso Mentor Apache
Comparativa entre servidores web
Comparativa
Existen multitud de servidores web, pero los dos mas conocidos e importantes por sus niveles de implantación son Apache e IIS
(Internet Information Service).
Normalmente se asocia Apache a entornos Unix/GNU Linux (existen versiones de Apache para Windows) y IIS para entornos
Windows (no existen versiones para GNU Linux).
Sin entrar en detalles de las características técnicas se puede decir que:
Apache
Es software libre
Es modular
IIS
Es software propietario (Microsoft)
Es modular a partir de la versión 6
Utilizado en los grandes servidores raíz de Internet
Utilizado en entornos corporativos
Ejecutado desde un usuario diferente del superusuario root
del sistema
Ejecutado desde el propio usuario administrador del sistema
hasta la versión 6
La implantación de cada uno de ellos se puede ver en la figura del epígrafe Evolución.
Comprobar como el porcentaje de utilización de Apache es bastante superior al de IIS.
Evolución
La figura siguiente muestra la implantación de diferentes servidores web y su evolución en el tiempo.
7 de 31
Developer February 2011 Percent March 2011
Percent Change
Apache
171,195,554
60.10
179,720,332
60.31
0.21
Curso Mentor Apache
Microsoft 57,084,126
Google
14,454,484
Lighttpd 1,953,966
20.04
5.07
0.69
57,644,692
15,161,530
1,796,471
19.34
5.09
0.60
-0.70
0.01
-0.08
Esta información actualizada, incluida la imagen, se puede obtener de http://news.netcraft.com/archives
/web_server_survey.html
8 de 31
Curso Mentor Apache
¿Qué es Apache?
Introducción a Apache2
El servidor HTTP Apache2 es un servidor web de software libre desarrollado por la Apache Software Foundation
(ASF). El producto obtenido de este proyecto es un servidor de código fuente completo, descargable y gratuito.
La página web del proyecto es www.apache.org.
Apache2 es robusto y con un ciclo de desarrollo muy rápido gracias a la gran cantidad de colaboradores voluntarios de
que dispone.
Es también un servidor estable, eficiente, extensible y multiplataforma.
Estable: es una consecuencia de su probada robustez que impide caídas o cambios en el servidor inesperados.
Flexible y eficiente: es capaz de trabajar con el estándar HTTP/1.1 (RFC2616) y con la mayor parte de las
extensiones web que existen en la actualidad, como son los módulos PHP, SSL, CGI, SSI, proxy,...
Extensible: dispone de gran cantidad de módulos que amplían su funcionalidad.
Multiplataforma ya que está disponible para diferentes plataformas como GNU/Linux, Windows, MacOS.
Desde el año 1996 es el servidor más utilizado en Internet y es el utilizado en los sistemas GNU/Linux. En concreto, a
fecha de Marzo de 2011 más del 60% de los sitios web de Internet utilizan Apache.
Busca el significado de los términos...
SSL (Secure Sockets Layer)
SSI (Server Side Includes)
9 de 31
Curso Mentor Apache
Origen de Apache
Un poco de historia
En los comienzos de Internet hablar de 'servicio web' se limitaba a la publicación de páginas en formato HTML
utilizando el protocolo HTTP sobre redes TCTP/IP.
Al poco tiempo de la aparición de
Comentarios de: Apache (0)
No hay comentarios