Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Página 1 de 23
FUNCIONAMIENTO DEL SERVICIO HTTP .............................................................. 3
Página 2 de 23
Funcionamiento del servicio HTTP
El protocolo HTTP (HyperText Transfer Protocol o Protocolo de Transferencia de HiperTexto)
surgió para facilitar a los usuarios el acceso a información remota de una forma sencilla e
intuitiva, dando lugar a lo que conocemos como WWW (World Wide Web o Telaraña Mundial).
Define las reglas que utilizan los componentes software (clientes y servidores) para
comunicarse. Utiliza TCP como protocolo de transporte.
Los usuarios acceden a HTTP a través de unos documentos denominados páginas o webs.
Además de texto, estas páginas pueden incluir imágenes, sonido o vídeo. También incluyen el
acceso a otras páginas o servicios a través de hiperenlaces. Al formato de estas páginas se le
conoce como hipertexto o HTML (HyperText Markup Language o Lenguaje de Marcas de
Hipertexto).
Las páginas estáticas tienen un contenido que no admiten interacción por parte del usuario,
simplemente se muestran. Para conseguir que los usuarios interactúen con ellas se requiere
que las páginas sean programadas o páginas dinámicas.
PHP
ASP (Active Server Pages o Páginas Activas de Servidor).
Java.
JSP (Java Server Pages o Páginas de Servidor Java).
JavaScript.
CGI (Common Gateway Interfaz o Interfaz de Pasarela Común).
Ajax (Asinchronous JavaScript and XML o JavaScript y XML Asíncrono).
Para la visualización de las páginas se utiliza un navegador. El acceso a una página requiere
que el usuario proporcione información sobre cómo localizarla, especificando lo que se conoce
como URL (Uniform Resource Locator o Localizador Uniforme de Recursos).
Cuando se indica un URL en un navegador, una vez resuelta por el servidor DNS que se tenga
configurado, se establece una conexión TCP con el puerto 80 del servidor, que permanece a la
escucha de solicitudes HTTP. El servidor atiende la petición y envía la página o el recurso
solicitado en forma de página web, mostrándose el navegador cliente.
Página 3 de 23
Las páginas que se ofrecen a los usuarios se almacenan en los servidores HTTP,
localizándose en un directorio específico denominado sitio o sitio web. En este directorio, se
suele establecer una jerarquía de subdirectorios para organizar las distintas páginas, así como
los distintos elementos que las integran. La página index.htm se sitúa en el directorio raíz de la
jerarquía y se utiliza a modo de índice para dar acceso al resto de páginas.
Los servidores web son programas que atienden peticiones HTTP, procesan e interpretan
código escrito en diferentes lenguajes y envían a los clientes los recursos solicitados.
Entre el cliente y el servidor se puede transferir cualquier tipo de contenido, aunque debería
estar definido por el estándar MIME (Multipurpose Internet Mail Extension o Extensión de
Correo Multipropósito de Internet). Este estándar se definió para el envío de mensajes de
correo electrónico, aunque posteriormente también se ha utilizado para transferencias de
información mediante HTTP.
Este estándar define los formatos, tipo de letra y características de una página para que pueda
ser visible por distintos navegadores.
Para especificar el tipo de contenido de una página web se incluye una etiqueta meta:
Página 4 de 23
Acceso seguro, utilización de certificados
HTTP no es un protocolo seguro:
No se garantiza que los equipos involucrados en la transferencia son quienes dicen ser Es
vulnerable a ataques de suplantación de identidad (spoofing).
Los certificados son utilizados para permitir que las comunicaciones sean seguras. Cuando
accedemos a un sitio web mediante HTTPS necesitamos conocer previamente que el servidor
es realmente la entidad a la que queremos acceder. Para demostrarlo deberá poseer un
certificado, firmado por una entidad certificadora como la FNMT (Fábrica Nacional de Moneda
y Timbre).
Página 5 de 23
Parámetros de configuración
Alojamiento virtual basado en IPs: para configurar diferentes IP, la máquina debe
tener varias tarjetas de red configuradas cada una con una dirección IP o hay que
asignar varias direcciones IP (alias o interfaces virtuales) a una misma tarjeta de red.
Esto supone un derroche de direcciones IP.
Página 6 de 23
Configuración del Servidor HTTP
Configuración de IIS
1. Herramientas administrativas
2. Administrador de Internet Information Service
3. En el panel de izquierda pulsar sobre el nombre del equipo.
4. Seleccionar en el panel central la opción de configuración correspondiente.
Página 7 de 23
SITIO WEB POR DEFECTO
IIS admite el alojamiento virtual de sitios web. Por defecto hay creado un sitio o servidor
virtual.
2. Examen de directorios:
Los directorios que cuelgan de wwwroot heredan su configuración.
Página 8 de 23
3. Códigos de error:
Sobre el sitio web predeterminado, pincha sobre Páginas de errores en el panel
central.
SERVICIOS DE AUTENTICACIÓN
Página 9 de 23
Gestión de certificados y acceso seguro
con HTTPS
IIS permite la generación de un certificado en un fichero de texto previa solicitud de
determinada información por parte de un asistente. Posteriormente habrá que contactar con
una CA para que firme el certificado y nos lo remita mediante un fichero con extensión “.cer”, el
cual habrá que instalar.
Configuración de https
Página 10 de 23
Configuración en GNU/Linux
Existen diferentes herramientas para distribuciones OpenSuSe y Fedora que permiten
gestionar el software de servidor HTTP Apache 2, modificando los parámetros del fichero
principal de configuración que deben establecerse para instalar un servidor web básico y
servidores web virtuales basados en nombre.
Apache 2
Fundación que desarrolla una gran cantidad de proyectos software. Uno de sus principales
proyectos es un servidor web open source. En la actualidad es el servidor web más popular y
usado en Internet. Pude instalarse en múltiples sistemas operativos.
Durante la configuración de Apache se asociará un sitio web a cada servidor virtual. Para que
los clientes puedan acceder mediante las URL correspondientes, será necesario que un
servidor DNS asocie cada uno de los nombres configurados con la dirección IP del servidor.
Página 11 de 23
Instalación de Apache en Ubuntu
1. Actualizar el sistema
# apt-get update
Con este comando se actualiza nuestra lista de repositorios y los paquetes que
tengamos instalados si hay alguna actualización disponible. Si les hace cualquier
pregunta acerca de actualizar algún paquete pueden contestar que sí.
Editar los ficheros /etc/hostname y /etc/hosts para comprobar que el equipo tiene un
nombre FQDN (nombre del equipo y dominio).
3. Instalar Apache
Para probar que Apache está funcionando bien basta con ir a la dirección en el
navegador:
Página 12 de 23
1. /etc/apache2/apache2.conf
Desde este fichero se incluyen (usando la directiva include) otros ficheros de configuración.
Página 13 de 23
2. /etc/apache2/ports.conf
Se definen las IPs y puertos en los que escucha el servidor.
3. /etc/apache2/sites-available/
Directorio de configuración de sitios virtuales disponibles. Por defecto está creado el fichero
default con la configuración del denominado servidor virtual por defecto.
4. /etc/apache2/sites-enabled/
Directorio de configuración de sitios virtuales habilitados (con enlaces a los ficheros de
sites-available). Los enlaces que se encuentren en este directorio serán los servidores
virtuales de Apache. Se incluye en el fichero apache2.conf por orden alfabético. Por
defecto está creado el fichero 000-default que es un enlace al fichero default de sites-
availables.
Página 14 de 23
Configuración del servidor virtual por defecto
1. /etc/apache2/ports.conf
Comprueba que están habilitados los servidores virtuales por nombre. En todas las
direcciones IP y en el puerto 80.
2. /etc/apache2/sites-enabled
Accede a este directorio y consulta el fichero 000-default.conf (enlace simbólico)
3. /etc/apache2/sites-available
Accede a este directorio y consulta el fichero 000-default.conf que contiene las
directivas que determinan como Apache sirve el contenido de ese directorio.
Todos los directorios que estén dentro de /var/www/html heredan su configuración.
Ésta se puede sobrescribir usando la directiva <Directory>.
Página 15 de 23
Para el último caso, se ha heredado la configuración de directorio html y no existe
una página web llamada red.html, por lo que se muestra su contenido (Options
Indexes).
Habrá que añadir una directiva <Directory> por cada directorio que tengamos en
el sitio:
Página 16 de 23
6. Autenticación HTTP Basic
c) para usa la autenticación básica hay que crear un fichero accesible por Apache
en el que se guardarán los usuarios y sus contraseñas.
#htpasswd –c /etc/apache2/passwd usuario1
#htpasswd /etc/apache2/passwd usuario2
Página 17 de 23
Host virtuales
Apache tiene varios directorios de configuración, los que nos interesan en este
momento son dos:
/etc/apache2/sites-available
/etc/apache2/sites-enabled
el primero tiene los archivos de configuración de los sitios disponibles y el segundo son
enlaces simbólicos de los sitios activos, por defecto al instalar Apache se crea un
archivo llamado default que contiene la configuración básica de acceso de Apache
y es un archivo que no se debe borrar.
# nano /etc/apache2/sites-available/ejemplo.com.conf
<Virtual Host *:80> estamos indicando la directiva VirtualHost para decir que es un
Servidor Virtual, indicamos la dirección IP donde va a responder y el puerto (80 es
el puerto por defecto donde escucha Apache). Si queremos que escuche en
todas las direcciones IP quitamos la dirección y colocamos un asterisco *:80
Página 18 de 23
3. Guarda el archivo y ejecuta en el terminal el siguiente comando desde el
directorio sites-available:
#a2ensite ejemplo.com.conf
4. Reinicia el Apache:
# nano /etc/hosts
127.0.0.1 ejemplo.com
# service networking restart
Página 19 de 23
Configuración del Cliente HTTP
La utilización del software cliente de este servicio (navegadores) se basa en indicar la URL
deseada en el campo destinado a tal efecto. Reciben recursos de los servidores web, los
procesan y muestran los resultados al usuario. Si el recurso que recibe el navegador no puede
ser interpretado por él, puede redirigirlo a una aplicación externa capaz de gestionarlo o
preguntar al usuario qué quiere hacer.
Mantienen una memoria cache en la que almacenan durante un tiempo las direcciones a las
que han accedido (historial), los recursos procesados, las contraseñas introducidas por el
usuario en las aplicaciones, etc.
Algunas características y elementos comunes a gran parte de los navegadores son los
siguientes:
Página 20 de 23
Página 21 de 23
Configuración en Microsoft Windows
En Windows es conocido su navegador Internet Explorer, incorporando en cada una de las
versiones de este sistema operativo alagunas novedades relevantes:
Página 22 de 23
Configuración en GNU/Linux
Konqueror es uno de los navegadores comúnmente utilizado en distribuciones Linux. Su
utilización requiere el inicio de una sesión gráfica en el entorno gráfico KDE.
Página 23 de 23