HTTP es un protocolo de red que define reglas para publicar páginas web y funciona a través de solicitudes y respuestas entre clientes como navegadores web y servidores donde residen páginas web. Una transacción HTTP consiste en un encabezado que especifica la acción requerida y el tipo de datos, seguido opcionalmente por datos. Los encabezados permiten enviar información descriptiva para autenticación, cifrado e identificación de usuario.
2. HTTP son las siglas en inglés de HiperText Transfer Protocol (en
español protocolo de transferencia de hipertexto). Es un
protocolo de red (un protocolo se puede definir como un conjunto
de reglas a seguir) para publicar páginas de web o HTML. HTTP
es la base sobre la cual está fundamentado Internet, o la WWW
3. protocolo HTTP funciona a través de solicitudes y respuestas
entre un cliente (por ejemplo un navegador de Internet) y un
servidor (por ejemplo la computadora donde residen páginas
web). A una secuencia de estas solicitudes se le conoce como
sesión de HTTP.
4. Una transacción HTTP está formada por un encabezado seguido, opcionalmente,
por una línea en blanco y algún dato. El encabezado especificará cosas como la
acción requerida del servidor, o el tipo de dato retornado, o el código de estado.
El uso de campos de encabezados enviados en las transacciones HTTP le dan
gran flexibilidad al protocolo. Estos campos permiten que se envíe información
descriptiva en la transacción, permitiendo así la autenticación, cifrado e
identificación de usuario.
5. Un encabezado es un bloque de datos que precede a la información propiamente
dicha, por lo que muchas veces se hace referencia a él como metadato —porque
tiene datos sobre los datos—.
Si se reciben líneas de encabezado del cliente, el servidor las coloca en las
variables de entorno de CGI con el prefijo HTTP_ seguido del nombre del
encabezado. Cualquier carácter guion ( - ) del nombre del encabezado se
convierte a caracteres "_".
6. El servidor puede excluir cualquier encabezado que ya esté procesado, como
Authorization, Content-type y Content-length. El servidor puede elegir excluir
alguno o todos los encabezados, si incluirlos, si se excede algún límite del entorno
de sistema. Ejemplos de esto son las variables HTTP_ACCEPT y
HTTP_USER_AGENT.
HTTP_ACCEPT. Los tipos MIME que el cliente aceptará, dados los encabezados
HTTP.
7. Un código de estado que indica si la petición fue correcta o no. Los códigos de
error típicos indican que el archivo solicitado no se encontró, que la petición no se
realizó de forma correcta o que se requiere autenticación para acceder al archivo.
La información propiamente dicha. Como HTTP permite enviar documentos de
todo tipo y formato, es ideal para transmitir multimedia, como gráficos, audio y
video. Esta libertad es una de las mayores ventajas de HTTP.
Información sobre el objeto que se retorna.
8. Ejemplo de un diálogo
HTTP
Para obtener un recurso con el URL http://www.example.com/index.html
Se abre una conexión al host www.example.com, puerto 80 que es el puerto
por defecto para HTTP.
Se envía un mensaje en el estilo siguiente:
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: nombre-cliente
[Línea en blanco]
9. HTTP define 8 métodos (algunas veces referido como "verbos") que indica la
acción que desea que se efectúe sobre el recurso identificado. Lo que este
recurso representa, si los datos pre-existentes o datos que se generan de
forma dinámica, depende de la aplicación del servidor. A menudo, el recurso
corresponde a un archivo o la salida de un ejecutable que residen en el
servidor.