Servidores Web: Funciones y Componentes Clave
48 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

¿Cuál de las siguientes consideraciones es menos crítica al seleccionar un equipo para un servidor web?

  • El tipo de hosting (dedicado, virtual o en la nube).
  • Evitar la sobrecarga del servidor.
  • Adaptación perfecta a las necesidades del proyecto.
  • Asegurar la compatibilidad con todos los sistemas operativos de los clientes. (correct)

Un administrador de sistemas nota un aumento significativo en la latencia del servidor web. ¿Cuál de las siguientes funciones del servidor web podría ayudar más directamente a mitigar este problema?

  • Almacenamiento en caché de documentos dinámicos. (correct)
  • Cifrado de la comunicación vía HTTPS.
  • Autenticación HTTP para áreas específicas de una aplicación web.
  • Redirección de una solicitud de documento por medio de Rewrite Engine.

¿Cuál de las siguientes NO es una función comúnmente ofrecida por los servidores web, además de la transferencia de contenido web?

  • Ejecución de videojuegos multijugador en tiempo real. (correct)
  • Autenticación HTTP.
  • Redirección de solicitudes.
  • Almacenamiento en caché de documentos.

¿Cuál de los siguientes escenarios describe mejor el uso de un servidor proxy?

<p>Actuar como intermediario entre un cliente y un servidor web. (D)</p> Signup and view all the answers

Si un sitio web experimenta un periodo de inactividad (downtime), ¿cuál es la consecuencia más probable para los usuarios?

<p>Los usuarios no podrán acceder al sitio web durante ese período. (C)</p> Signup and view all the answers

Un desarrollador web necesita implementar una solución para asegurar la comunicación entre el servidor y el cliente. ¿Qué característica de los servidores web es más adecuada para este propósito?

<p>Cifrado de la comunicación vía HTTPS. (C)</p> Signup and view all the answers

¿Cuál fue el propósito inicial de la creación de la World Wide Web (www) en el CERN?

<p>Facilitar el intercambio de información entre científicos. (C)</p> Signup and view all the answers

¿Qué papel juega el protocolo HTTP en el funcionamiento de Internet?

<p>Es la base para la World Wide Web (www). (C)</p> Signup and view all the answers

¿Cuál de los siguientes enunciados describe mejor la función principal de un servidor web en el contexto de la arquitectura web?

<p>Almacenar, procesar y entregar contenido web (como páginas HTML, imágenes y archivos) a los clientes que lo solicitan a través de Internet. (A)</p> Signup and view all the answers

¿Cuál de las siguientes NO es una función común adicional que puede realizar un servidor web, además de servir contenido estático?

<p>Actuar como un servidor de correo electrónico (SMTP). (D)</p> Signup and view all the answers

¿Cuál fue la principal mejora introducida por HTTP/1.1 en comparación con HTTP/1?

<p>Soporte para conexiones persistentes, permitiendo múltiples peticiones y respuestas a través de la misma conexión TCP. (B)</p> Signup and view all the answers

¿Qué característica principal diferencia a HTTP/2 de HTTP/1.1?

<p>Multiplexación de peticiones y respuestas a través de una única conexión TCP. (A)</p> Signup and view all the answers

¿Cuál es el propósito principal de los 'comandos' o 'métodos' HTTP (como GET, POST, PUT, DELETE)?

<p>Indicar la acción que el cliente desea realizar en el servidor. (D)</p> Signup and view all the answers

¿Cuál de las siguientes describe con mayor precisión la función de las cabeceras HTTP en una comunicación web?

<p>Proporcionar metadatos sobre la petición o la respuesta, como el tipo de contenido, la codificación y la información del servidor. (D)</p> Signup and view all the answers

¿Qué protocolo se utiliza para asegurar las comunicaciones entre un cliente y un servidor web mediante el cifrado de los datos transmitidos?

<p>HTTPS (B)</p> Signup and view all the answers

En términos generales, ¿cuál es una de las principales diferencias filosóficas en el diseño entre Apache y Nginx?

<p>Apache utiliza una arquitectura basada en hilos (threads), mientras que Nginx utiliza una arquitectura basada en eventos. (B)</p> Signup and view all the answers

¿Cuál fue la principal motivación detrás del desarrollo inicial de la World Wide Web?

<p>La necesidad de facilitar la colaboración entre grupos de científicos distribuidos geográficamente. (B)</p> Signup and view all the answers

¿Cuál era la principal limitación de la versión 0.9 del protocolo HTTP?

<p>Solo permitía solicitar y transferir archivos HTML. (B)</p> Signup and view all the answers

¿Qué mejora significativa se introdujo con la versión 1.0 del protocolo HTTP en comparación con la versión 0.9?

<p>La posibilidad de transferir mensajes con encabezados que describen el contenido. (A)</p> Signup and view all the answers

En HTTP/1.1, ¿qué ventaja principal aportó la capacidad de reutilizar una conexión?

<p>Ahorra tiempo al evitar la necesidad de reabrir la conexión repetidamente. (A)</p> Signup and view all the answers

¿Cómo contribuyó la funcionalidad de 'Pipelining' en HTTP/1.1 a mejorar la eficiencia de la comunicación?

<p>Permitiendo realizar múltiples peticiones antes de recibir las respuestas, disminuyendo la latencia. (A)</p> Signup and view all the answers

¿De qué manera la cabecera 'Host' en HTTP/1.1 mejoró la flexibilidad en la configuración de servidores web?

<p>Posibilitó el alojamiento de varios dominios en la misma dirección IP. (A)</p> Signup and view all the answers

En HTTP/1.1, ¿qué implicación tuvo la adición de la negociación de contenido para el intercambio de información entre cliente y servidor?

<p>Permitió que el servidor y el cliente acordaran el contenido más adecuado a intercambiarse (idioma, codificación, etc.). (B)</p> Signup and view all the answers

¿Por qué el desarrollo de HTTP/2 se volvió necesario a medida que avanzaba el tiempo?

<p>Para optimizar el rendimiento frente a páginas web cada vez más amplias y complejas. (D)</p> Signup and view all the answers

¿Cuál de las siguientes opciones describe mejor el propósito del comando GET en el protocolo HTTP?

<p>Solicitar cualquier tipo de información o recurso al servidor. (C)</p> Signup and view all the answers

Un navegador web necesita mostrar una página HTML que contiene tres imágenes. ¿Cuántas conexiones TCP/IP separadas se establecerán, asumiendo que no se utiliza una conexión persistente?

<p>Cuatro, una para la página HTML y una para cada imagen. (C)</p> Signup and view all the answers

¿Qué tipo de información NO se incluye típicamente en una petición HTTP enviada por un navegador al servidor?

<p>El sistema operativo del servidor. (C)</p> Signup and view all the answers

¿Cuál es el principal uso del método HEAD en HTTP?

<p>Obtener información sobre un recurso sin descargar su contenido. (D)</p> Signup and view all the answers

¿Cuál de los siguientes métodos HTTP está diseñado principalmente para enviar datos desde el cliente al servidor?

<p>POST (C)</p> Signup and view all the answers

Después de que un cliente envía una petición HTTP al servidor, ¿qué tipo de información se incluye en la respuesta del servidor?

<p>Un código de estado y el tipo de dato MIME de la información de retorno, seguido de la propia información. (A)</p> Signup and view all the answers

Si un usuario hace clic en un enlace en una página web, ¿qué método HTTP se utiliza normalmente para solicitar la nueva página?

<p>GET (A)</p> Signup and view all the answers

¿Cuál de los siguientes describe mejor el rol de los gestores de caché de páginas o servidores proxy en relación con el método HEAD?

<p>Lo utilizan para conocer cuándo es necesario actualizar la copia que mantienen de un recurso. (A)</p> Signup and view all the answers

¿Cuál de los siguientes métodos HTTP se utiliza principalmente para solicitar al servidor los métodos permitidos para una URL específica?

<p>OPTIONS (D)</p> Signup and view all the answers

¿Qué método HTTP está diseñado para eliminar un recurso especificado por una URL?

<p>DELETE (C)</p> Signup and view all the answers

El método TRACE en HTTP se utiliza principalmente para:

<p>Identificar la ruta que sigue una petición a través de la red. (D)</p> Signup and view all the answers

¿Cuál es la función principal del método PUT en el contexto de las solicitudes HTTP?

<p>Enviar información para actualizar o crear un recurso. (C)</p> Signup and view all the answers

¿Cuál es la principal diferencia entre los métodos PUT y POST?

<p>PUT se usa para la actualización, mientras que POST se usa para la creación. (A)</p> Signup and view all the answers

En una solicitud HTTP, ¿qué componente permite enviar datos de un formulario al servidor, especialmente cuando se utiliza el método POST?

<p>El cuerpo de la solicitud. (D)</p> Signup and view all the answers

Una línea de estado en una respuesta HTTP incluye:

<p>La versión del protocolo, un código de estado/error y su significado. (C)</p> Signup and view all the answers

¿Qué parte de una solicitud HTTP proporciona información adicional sobre el cliente (navegador, sistema operativo) y la propia solicitud?

<p>Los campos del encabezado de solicitud. (C)</p> Signup and view all the answers

¿Cuál fue la principal motivación detrás del desarrollo del protocolo SPDY por parte de Google?

<p>Resolver las limitaciones de HTTP/1.1 al procesar múltiples solicitudes en una misma conexión, mejorando la velocidad de carga de las páginas web complejas. (C)</p> Signup and view all the answers

¿Qué mejora significativa introduce HTTP/3 en comparación con sus predecesores?

<p>Sustituye el protocolo TCP por UDP, empleando QUIC para mejorar la gestión de conexiones y reducir la latencia. (C)</p> Signup and view all the answers

En el contexto de la evolución de los protocolos web, ¿cuál fue el impacto más relevante de SPDY?

<p>Sirvió como base experimental para el desarrollo de HTTP/2, influyendo en sus mejoras y optimizaciones. (C)</p> Signup and view all the answers

¿Cuál es el principal problema que HTTP/3 busca solucionar al abandonar el protocolo TCP?

<p>El mecanismo de confirmación de recepción de paquetes de TCP, que puede causar retrasos si se pierde algún paquete. (D)</p> Signup and view all the answers

Considerando la estructura de una URL, ¿qué componente es opcional?

<p>El puerto. (B)</p> Signup and view all the answers

Si un navegador intenta acceder a http://www.ejemplo.com:8080/index.html, ¿qué parte de la URL indica un puerto no estándar?

<p><code>8080</code> (D)</p> Signup and view all the answers

¿Cuál es el rol del protocolo QUIC en HTTP/3?

<p>QUIC sirve como base para HTTP/3 al gestionar las conexiones UDP y mejorar la fiabilidad y eficiencia en la transferencia de datos. (A)</p> Signup and view all the answers

En el proceso de comunicación HTTP, ¿qué acción realiza el cliente web después de que un usuario introduce una URL?

<p>El cliente descodifica la URL, separando sus componentes para iniciar la solicitud al servidor. (C)</p> Signup and view all the answers

Flashcards

¿Qué es un servidor web?

Un programa que responde a las peticiones de los clientes, sirviendo archivos web.

¿Qué es HTTP?

El protocolo que permite la comunicación entre un cliente (navegador) y un servidor web.

Comandos/Métodos HTTP

GET, POST, PUT, DELETE. Indican la acción que el cliente quiere realizar en el servidor.

Cabeceras HTTP

Información adicional enviada en las peticiones y respuestas HTTP, como el tipo de contenido o el idioma.

Signup and view all the flashcards

Tipos MIME

Indican el tipo de archivo que se está transfiriendo (ej: image/jpeg, text/html).

Signup and view all the flashcards

¿Qué es HTTPS?

Una versión segura de HTTP que utiliza cifrado para proteger la comunicación.

Signup and view all the flashcards

Funcionamiento de HTTPS

Se basa en certificados SSL/TLS para encriptar la información transmitida.

Signup and view all the flashcards

Apache vs Nginx

Dos de los servidores web más populares. Apache es más tradicional, Nginx destaca en rendimiento.

Signup and view all the flashcards

Selección del servidor web

Seleccionar el equipo adecuado y la modalidad (dedicado, virtual o en la nube) para evitar la sobrecarga del servidor.

Signup and view all the flashcards

Downtime

Período durante el cual un servidor web no está disponible, impidiendo el acceso a la web.

Signup and view all the flashcards

Seguridad HTTPS

Cifrar la comunicación entre el servidor y el cliente, asegurando la confidencialidad de los datos transmitidos.

Signup and view all the flashcards

Autenticación HTTP

Verificar la identidad de los usuarios antes de permitirles el acceso a ciertas áreas de la aplicación web.

Signup and view all the flashcards

Redirección web

Redirigir una solicitud de documento a otra ubicación, útil para reorganizar un sitio web.

Signup and view all the flashcards

Caché del servidor

Guardar copias de documentos dinámicos para responder rápidamente a las solicitudes y reducir la carga del servidor.

Signup and view all the flashcards

Asignación de cookies

Enviar y procesar pequeños archivos que los sitios web utilizan para recordar información sobre los usuarios.

Signup and view all the flashcards

Protocolo HTTP

Protocolo que es la base de la web (World Wide Web) y permite la transferencia de hipertexto.

Signup and view all the flashcards

HTML

Lenguaje usado para crear páginas web.

Signup and view all the flashcards

HTTP

Protocolo de transferencia de hipertexto, usado para la comunicación en la web.

Signup and view all the flashcards

HTTP/0.9

Primera versión de HTTP, muy simple y limitada a transferir archivos HTML.

Signup and view all the flashcards

HTTP/1.0

Versión de HTTP que introdujo encabezados para describir el contenido de los mensajes.

Signup and view all the flashcards

HTTP/1.1

Versión de HTTP que mejoró la reutilización de conexiones y permitió el 'pipelining'.

Signup and view all the flashcards

Reutilización de conexión

Capacidad de reutilizar una conexión HTTP para múltiples peticiones y respuestas.

Signup and view all the flashcards

Pipelining (Enrutamiento)

Técnica que permite enviar múltiples peticiones antes de recibir las respuestas.

Signup and view all the flashcards

Cabecera Host

Permite alojar múltiples dominios en la misma dirección IP.

Signup and view all the flashcards

¿Qué es SPDY?

Un protocolo experimental de Google diseñado para acelerar la carga de páginas web.

Signup and view all the flashcards

¿Qué es UDP?

Un protocolo que no aplica medidas correctivas y permite el envío continuo de paquetes, utilizado por HTTP/3.

Signup and view all the flashcards

¿Qué es QUIC?

Quick UDP Internet Connections. El protocolo que sirve como base para HTTP/3, construido a partir de UDP.

Signup and view all the flashcards

¿Cómo funciona HTTP?

Proceso de comunicación entre un cliente web y un servidor.

Signup and view all the flashcards

¿Qué partes componen una URL?

Protocolo, dirección del servidor, puerto (opcional), y objeto requerido.

Signup and view all the flashcards

OPTIONS (HTTP)

Devuelve los métodos HTTP soportados por el servidor para una URL.

Signup and view all the flashcards

DELETE (HTTP)

Elimina un recurso especificado en la URL.

Signup and view all the flashcards

TRACE (HTTP)

Permite sondear los dispositivos de red por los que pasa la petición.

Signup and view all the flashcards

PUT (HTTP)

Escribe datos en el servidor; crea o reemplaza un recurso en la URL.

Signup and view all the flashcards

POST (HTTP)

Orientado a la creación de nuevos contenidos en el servidor.

Signup and view all the flashcards

Solicitud HTTP

Conjunto de líneas que el navegador envía al servidor en una petición.

Signup and view all the flashcards

Encabezados de solicitud HTTP

Aporta información adicional sobre la solicitud y/o el cliente.

Signup and view all the flashcards

Línea de estado HTTP

Incluye la versión del protocolo, código de estado y su significado.

Signup and view all the flashcards

Conexión TCP/IP

Establece una conexión con el servidor a través de un puerto TCP específico.

Signup and view all the flashcards

Petición HTTP

Es el comando usado (GET, POST, etc.), la dirección del recurso solicitado, la versión HTTP y datos del navegador.

Signup and view all the flashcards

Respuesta del Servidor HTTP

Incluye un código de estado, el tipo MIME del contenido y la información solicitada.

Signup and view all the flashcards

Múltiples Peticiones HTTP

El proceso de petición HTTP se repite por cada recurso (imágenes, vídeos, etc.) incrustado en una página web.

Signup and view all the flashcards

Comando HTTP: GET

Solicita información o un recurso al servidor. Se usa al hacer clic en un enlace o escribir una URL.

Signup and view all the flashcards

Comando HTTP: HEAD

Solicita información sobre un recurso, como tamaño o fecha de modificación. Útil para caché y proxies.

Signup and view all the flashcards

Comando HTTP: POST

Envía información al servidor, como los datos de un formulario.

Signup and view all the flashcards

Comandos HTTP 1.1 Adicionales

OPTIONS, PUT, DELETE, TRACE y CONNECT son comandos adicionales introducidos en HTTP versión 1.1

Signup and view all the flashcards

Study Notes

  • Las páginas web permiten almacenar contenidos atractivos y ser consultados globalmente.
  • La popularización de Internet ha impulsado a empresas y usuarios a anunciar productos y capacidades personales mediante páginas web.
  • Las páginas web, en su mayoría en formato HTML, se deben alojar en máquinas con espacio en disco y capacidad para entender todo tipo de extensiones de archivos.
  • Se deben considerar las medidas de seguridad, incorporando protocolos de comunicación seguros como HTTPS que utilizan cifrado SSL.
  • Las máquinas que alojan las páginas web son los servidores web.
  • Los requisitos importantes para los servidores son el espacio en disco y una buena conexión de red para que el consumo de la CPU sea bajo.
  • Los servidores web tienen consumos de recursos puntuales, con un número bajo de procesos en espera que se van arrancando.
  • Las páginas web que ejecutan interacción con el usuario o cifrado (HTTPS) consumen más recursos.
  • Para que una página web sea accesible, el servidor web debe estar permanentemente online.
  • Las grandes empresas y organizaciones cuentan con un servidor web propio, pero la mayoría recurre a proveedores de alojamiento web.
  • Se necesita un software para gestionar los datos de la página.
  • Existen varias soluciones de software para servidores web diseñadas para diferentes aplicaciones y sistemas operativos.

Tecnología de Servidores Web

  • El software de un servidor HTTP es el encargado de proporcionar los datos para la visualización del contenido web.
  • Para abrir una página web, el usuario escribe la URL en el navegador, el cual envía una solicitud al servidor web.
  • La respuesta del servidor web puede ser una página HTML estática o generada de forma dinámica.
  • La generación dinámica implica que el servidor web ejecuta un código de programa como Java o PHP.
  • El navegador interpreta la respuesta y puede generar más solicitudes al servidor, por ejemplo, para imágenes o archivos CSS.
  • La transmisión se realiza mediante HTTP (o HTTPS) sobre IP y TCP (o UDP).
  • Un servidor web puede entregar contenidos simultáneamente a varios ordenadores o navegadores.
  • La cantidad de solicitudes y la velocidad dependen del hardware, la carga del host, y la complejidad del contenido.
  • Los contenidos web dinámicos necesitan más recursos.
  • La selección del equipo adecuado y la decisión de si debe ser dedicado, virtual o en la nube se debe hacer pensando siempre en evitar sobrecargas en el servidor
  • Siempre existe el riesgo de fallos o cortes de energía, lo que causaría que la web no esté disponible

Funciones Adicionales de Servidores Web

  • Cifrado de la comunicación entre el servidor web y el cliente vía HTTPS.
  • Autenticación HTTP para áreas específicas de una aplicación web.
  • Redirección de una solicitud de documento por medio de Rewrite Engine.
  • Almacenamiento en caché de documentos dinámicos para la respuesta eficiente de solicitudes.
  • Envío y procesamiento de cookies HTTP.
  • Se pueden utilizar servidores FTP, servidores de bases de datos, servidores de correo, servidores de juegos o servidores proxy.

El Protocolo HTTP

  • El protocolo de transferencia de hipertexto (HTTP) es la base de la web (www).
  • La web fue creada en 1989 en el CERN, con sede en Ginebra.
  • La web nació de la necesidad de colaboración entre científicos repartidos por el mundo.

Historia del Protocolo HTTP

  • En los inicios del protocolo HTTP, a mediados de 1990, la versión 0.9 tenía como finalidad transferir datos por Internet en forma de páginas web HTML.
  • A partir de la versión 1.0 del protocolo surgió la posibilidad de transferir mensajes con encabezados.

Versiones del protocolo HTTP

  • La historia de HTTP comenzó en 1989, cuando Tim Berners-Lee y su equipo del CERN (Suiza) desarrollaron la World Wide Web.
  • La versión inicial de HTTP fue la 0.9.
  • Consistía en una sola línea y solo permitía solicitar un archivo HTML del servidor cada vez.
  • El servidor solo transfería el archivo solicitado.

El Primer Estándar Oficial HTTP/1.1

  • HTTP/1.1 aclaró ambigüedades y añadió numerosas mejoras.
  • Una conexión podía ser reutilizada, ahorrando tiempo.
  • Enrutamiento('Pipelining' en inglés) se añadió a la especificación, permitiendo realizar una segunda petición de datos, antes de que fuera respondida la primera, disminuyendo de este modo la latencia de la comunicación.
  • Se permitió que las respuestas a peticiones, podían ser divididas en sub-partes.
  • La negociación de contenido, incluyendo el lenguaje, el tipo de codificación, o tipos, se añadieron a la especificación, permitiendo que servidor y cliente, acordasen el contenido más adecuado a intercambiarse.
  • Gracias a la cabecera, Host, pudo ser posible alojar varios dominios en la misma dirección IP.

Protocolo de Mayor Rendimiento HTTP/2

  • Las páginas web se volvían cada vez más amplias y complejas.
  • HTTP/1.1 está pensado para procesar solicitudes una tras otra en una misma conexión, de manera que cuanto más compleja sea una página web, más tardará en cargarse y mostrarse.
  • Google desarrolló el protocolo SPDY o Speedy, que despertó un gran interés.
  • En 2015 se publicó la versión HTTP/2 del protocolo.
  • Este estándar incluye múltiples mejoras que aceleran la carga de las páginas web.
  • La versión HTTP/2 se extendió rápidamente, con un 42 % de las páginas web utilizándola en enero de 2020.

El Futuro: HTTP/3

  • Un punto débil de todas las versiones de HTTP usadas hasta ahora es el protocolo de control de transmisión (TCP) en el que se basan.
  • TCP requiere que el receptor de cada paquete de datos confirme la recepción antes de que pueda enviarse el siguiente paquete.
  • HTTP/3 no funcionará con TCP, sino con UDP, que no aplica este tipo de medidas correctivas.
  • A partir de UDP, se ha creado el protocolo QUIC, que será la base de HTTP/3.

Funcionamiento del Protocolo HTTP

  • El protocolo HTTP tiene un funcionamiento sencillo basado en el envío de mensajes entre cliente y servidor.
  • Un usuario accede a una URL seleccionando un enlace o introduciéndola en el campo correspondiente del cliente Web.
  • El cliente Web descodifica la URL, separando sus partes: protocolo, dirección DNS o IP, puerto (por defecto 80) y objeto requerido.
  • Se abre una conexión TCP/IP con el servidor, llamando al puerto TCP correspondiente. Se realiza la petición HTTP, enviando el comando (GET, POST, HEAD,...), la dirección del objeto, la versión del protocolo y información sobre el navegador.
  • El servidor devuelve la respuesta al cliente, incluyendo un código de estado y el tipo de dato MIME, seguido de la propia información.
  • Se cierra la conexión TCP. Este proceso se repite en cada acceso al servidor HTTP, incluyendo los recursos (imágenes, vídeos, etc.).

Comandos o Métodos HTTP

  • HTTP define un conjunto de métodos de petición para indicar la acción que se desea realizar para un recurso determinado.
  • El estándar HTTP/1.0 recoge únicamente tres comandos, que representan las operaciones de recepción y envío de información y chequeo de estado:
  • GET: Solicitar información o recurso de un servidor.
  • HEAD: Solicitar información sobre un recurso.
  • POST: Enviar información al sevidor.
  • La versión 1.1 del protocolo incorpora unos pocos comandos más como son: OPTIONS, PUT, DELETE, TRACE y CONNECT. Veamos algunos de ellos:
  • OPTIONS: Devuelve los métodos HTTP que el servidor soporta para una URL específica.
  • DELETE: Sirve para eliminar un recurso especificado en la URL.
  • TRACE: Comanda de un sondeo.
  • PUT: Permite escribir datos en el servidor, como el commando inverso a GET

Ejemplo de Petición y Respuesta HTTP

  • Una solicitud HTTP es un conjunto de líneas que el navegador envía al servidor.
  • Incluye:
  • El recurso solicitado, el método que se aplicará y la versión del protocolo utilizada.
  • Los campos del encabezado de solicitud.
  • El cuerpo de la solicitud: conjunto de líneas opcionales que permiten la transmisión de datos

Cabeceras HTTP

  • Las cabeceras HTTP son parámetros que se envían en una petición o respuesta HTTP al cliente o al servidor para proporcionar información esencial sobre la transacción en curso.
  • Las posibles códigos de estado se identifican con números de tres cifras y se clasifican:
  • Códigos Informativos (1xx: Informativa)
  • Códigos de Éxito (2xx: La petición se completó correctamente)
  • Códigos de Redirección (3xx: Redirección)
  • Códigos de Error del Cliente (4xx: Error del cliente)
  • Códigos de Error del Servidor (5xx: Error del servidor)

Tipos MIME

  • Originalmente, el protocolo HTTP fue diseñado para transportar archivos ASCII (texto plano).
  • Surgió la necesidad de incluir diferentes tipos de ficheros no ASCII (imágenes, vídeos, sonidos, etc.).
  • Hubo que transformar estos formatos a tipo ASCII (u otros juegos de caracteres compatibles) en el Navegador web
  • Se crearon los tipos MIME (Multipurpose Internet Mail Extensions), especificaciones para dar formato a mensajes no-ASCII, de forma que pudieran ser enviados por Internet.
  • Los tipos de medios de Internet son un estándar que indica el tipo de información que presenta un archivo o un conjunto de datos.
  • Es una buena practica proveer información de tipos de medios siempre que sea posible, como en el caso de los elementos.
  • El identificador del tipo de medio debe ajustarse al formato 'tipo/subtipo'.

HTTPS

  • El Protocolo seguro de transferencia de hipertexto (HTTPS) es la versión segura de HTTP basada en el protocolo HTTP, destinado a la transferencia segura de datos de hipertexto.
  • El protocolo HTTPS (la "ese" es de "Seguro") por la empresa Netscape.
  • HTTPS original utilizaba SSL como protocolo seguro, pero en la actualidad está obsoleto y se emplea TLS (Transport Layer Security).
  • El estándar de HTTP sobre TLS, en realidad, no se configuró hasta mayo del año 2000.

Funcionamento del protocolo HTTPS

  • El cliente envía una petición de sesión segura.
  • El servidor envía un certificado X.509 con la clave pública del servidor.
  • El cliente autentica el certificado con la lista de CA conocidas.
  • El cliente genera una clave simétrica aleatoria y la cifra utilizando la clave pública del servidor.
  • Ahora tanto el cliente como el servidor conocen la clave simétrica y cifran los datos del usuario final utilizándola durante la sesión.

Servidores Web: Apache vs Nginx

  • Para poner en marcha un servidor web, es necesario un sistema operativo (normalmente Linux), un software para la gestión de bases de datos (MySQL), y un software para gestionar el contenido dinámico de las webs (PHP).
  • La elección del servidor web determina las dudas.
  • Los Servidores Web son Apache y Nginx, los que dan un 85% de uso.
  • Microsoft IIS (si usamos un servidor Windows), LiteSpeed, Node.js.

Razones para usar Nginx

  • Es ligero: Nginx reduce el consumo de RAM.
  • Es multiplataforma y fácil de instalar: La mayoría de las grandes distribuciones de GNU/Linux, tienen Nginx en sus repositorios.
  • ¡Se puede usar junto a Apache!: Algunas empresas solo usan Nginx para servir contenido estático y Apache para el contenido dinámico.
  • Caché: Puedes usar Nginx como caché, con algo de configuración.
  • Balanceador de carga: Este servidor web puede funcionar como balanceador de carga, distribuyendo el tráfico entre varios servidores, permitiendo mayor escalabilidad.
  • Soporte comunitario y profesional: Nginx, Inc está detrás del desarrollo de Nginx, además de la comunidad en general, permitiendo tener un soporte tanto profesional como comunitario.
  • Compatibilidad con las aplicaciones web más populares: Nginx es compatible con una gran cantidad de CMS existentes en el mercado, y hay muchos tutoriales y documentación para instalar estos bajo Nginx.
  • Nginx está orientado a mejorar el rendimiento, soportando mayores cargas de tráfico y usuarios que Apache (Problema C10K).
  • En sus orígenes era especialmente eficiente ofreciendo contenido estático

Ejemplos de Servicios de Despliegue de Páginas Estáticas

  • Netlify.
  • Surge.
  • GitHub Pages.
  • GitLab Pages.
  • Firebase.
  • Vercel.
  • Neocities.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Description

Prueba sobre servidores web, su funcionalidad y componentes. Evalúa la comprensión sobre la selección de equipos, mitigación de latencia, funciones ofrecidas, uso de proxy, consecuencias del tiempo de inactividad y seguridad en la comunicación. También, explora el propósito inicial de la World Wide Web y el papel del protocolo HTTP.

More Like This

Introduction to HTTP and Web Servers
10 questions
Web Servers Quiz
22 questions

Web Servers Quiz

InstructiveCalcite avatar
InstructiveCalcite
Web Servers and HTTP Communication
18 questions
Use Quizgecko on...
Browser
Browser