SlideShare una empresa de Scribd logo
HTTP
Ing. Fernando Solis
PROTOCOLO HTTP
ALGUNAS DEF.-
*HTTP (HyperText Transfer Protocol) protocolo de transferencia de
hipertexto es un conjunto de reglas que rigen la transferencia de datos
en una comunicación Web.
*Es un protocolo cliente-servidor que articula los intercambios de
información entre los clientes Web y los servidores http.
*HTTP define la sintaxis y la semántica que utilizan los elementos software
de la arquitectura Web (cliente-servidor, proxies) para comunicarse.
Su finalidad es la transferencia de hipertexto o texto
con componentes y enlaces a otros textos pero en la
actualidad es utilizado tanto para la transferencia de
hipertexto como para la transferencia de ficheros
(carga y descarga), datos y trafico de red.
Se usa tanto para que el navegador pida una
pagina a un servidor como para que este envíe la
pagina solicitada al navegador. Esta basado en el
envío de comandos y respuestas en texto ASCII.
Al que hace la petición se le llama “user agent”
(agente usuario).
A la información transmitida se le llama “recurso”
puede ser archivo, resultado de ejecución, etc.
Una transacción HTTP consiste básicamente en:
 Conexión.- establecimiento de una conexión
cliente-servidor. Por el puerto TCP/IP 80 es el más
conocido pero se pueden usar otros no reservados.
 Solicitud.- envío por parte del cliente de un
mensaje de solicitud al servidor.
 Respuesta.- envío por parte del servidor de una
respuesta al cliente.
 Cierre.- fin de la conexión por parte del cliente y el
servidor.
HTTP es un protocolo sin estado es decir que no
guarda ninguna información sobre conexiones
anteriores.
El desarrollo de aplicaciones Web necesita
frecuentemente mantener estado. Para esto se
usan los “cookies” que es información que un
servidor puede almacenar en el sistema cliente.
Esto le permite a las aplicaciones Web instituir la
noción de sesión y también permite rastrear
usuarios ya que los “cookies” pueden guardarse en
el cliente por tiempo indeterminado.
FUNCIONAMIENTO DEL PROTOCOLO HTTP
A continuación se muestra una petición HTTP típica,
de una pagina Web:
GET / HTTP/1.1
 Host: www.24x7linux.com
 User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US;
rv:1.2b) Gecko/20021016
 Accept:text/xml,application/xml,application/xhtml
+xml,text/html;q=0.9, text/plain;q=0.8,video/x-
mng,image/png,image/jpeg,image/gif;q=0.2,
text/css,*/*;q=0.1
 Accept-Language: es-es, en-us;q=0.66, en;q=0.33
 Accept-Encoding: gzip, deflate, compress;q=0.9
 Accept-Charset: ISO-8859-15, utf-8;q=0.66, *;q=0.66
 Keep-Alive: 300
 Connection: keep-alive
RESPUESTA DEL SERVIDOR
HTTP/1.1 200 OK
 Date: Sun, 10 Nov 2002 22:50:55 GMT
 Server: Apache/1.3.26 (Unix) mod_bwlimited/1.0
PHP/4.2.2 mod_log_bytes/0.3
FrontPage/5.0.2.2510 mod_ssl/2.8.9 OpenSSL/0.9.6b
 Content-Type: text/html
 Age: 130
 Connection: close
 <-- archivo index.html que contiene la página principal
del sitio -->
Si en lugar de pedir una pagina en formato HTML se solicita
un recurso binario, como por ejemplo un archivo gráfico, la
respuesta será de la forma siguiente:
HTTP/1.1 200 OK
 Date: Sun, 10 Nov 2002 23:15:31 GMT
 Server: Apache/1.3.26 (Unix) mod_bwlimited/1.0
PHP/4.2.2 mod_log_bytes/0.3
FrontPage/5.0.2.2510 mod_ssl/2.8.9 OpenSSL/0.9.6b
 Last-Modified: Fri, 01 Nov 2002 12:23:38 GMT
 ETag: "23c32f-171cb-3dc2724a"
 Accept-Ranges: bytes
 Content-Length: 94667
 Content-Type: image/png
 Age: 131
EL SERVIDOR PUEDE TENER ALGUNA DE LAS
SIGUIENTES RESPUESTAS:
100 Continua
101 Cambio de protocolo
200 OK
201 Creado
202 Aceptado
203 Información no oficial
204 Sin Contenido
205 Contenido para reset
206 Contenido parcial
300 Múltiples posibilidades
301 Mudado permanentemente
302 Encontrado
303 Vea otros
304 No modificado
305 Utilice un proxy
307 Redirección temporal
400 Solicitud incorrecta
401 No autorizado
402 Pago requerido
403 Prohibido
404 No encontrado
405 Método no permitido
406 No aceptable
407 Proxy requerido
408 Tiempo de espera agotado
409 Conflicto
410 No mapas disponible
411 Requiere longitud
412 Falló precondición
413 Entidad de solicitud demasiado larga
414 URI de solicitud demasiado largo
415 Tipo de medio no soportado
416 Rango solicitado no disponible
417 Falló expectativa
500 Error interno
501 No implementado
502 Pasarela incorrecta
503 Servicio no disponible
504 Tiempo de espera de la pasarela agotado
505 Versión de HTTP no soportada

Más contenido relacionado

La actualidad más candente

trabajo monografico
trabajo monograficotrabajo monografico
trabajo monografico
geans159
 
Presentacion http y https
Presentacion http y httpsPresentacion http y https
Presentacion http y https
Victor Sevillano
 
Protocolo http y WWW
Protocolo http y WWWProtocolo http y WWW
Protocolo http y WWW
Oscar Luis Peña Valerio
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
NeftisLis
 
Configuración http rhel
Configuración http rhelConfiguración http rhel
Configuración http rhel
Camilo Suarez
 
Cómo configurar el envío de correo a internet en exchange 2013
Cómo configurar el envío de correo a internet en exchange 2013Cómo configurar el envío de correo a internet en exchange 2013
Cómo configurar el envío de correo a internet en exchange 2013
Cesar Zuñiga
 
Rest clase 4 - curso front-end 2014 - open webinars
Rest   clase 4 - curso front-end 2014 - open webinarsRest   clase 4 - curso front-end 2014 - open webinars
Rest clase 4 - curso front-end 2014 - open webinars
OpenWebinars.net
 
Tecnologías web
Tecnologías webTecnologías web
Tecnologías web
Carlos Van de Velde
 
Fundamentos de la web
Fundamentos de la webFundamentos de la web
Fundamentos de la web
Facultad de Ciencias y Sistemas
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
Maria Berenice Jardinez
 
Servidores, seguridad y autenticación
Servidores, seguridad y autenticaciónServidores, seguridad y autenticación
Servidores, seguridad y autenticación
Facultad de Ciencias y Sistemas
 
Yenny rocio mantilla villamizar ftp
Yenny rocio mantilla villamizar ftpYenny rocio mantilla villamizar ftp
Yenny rocio mantilla villamizar ftp
Rocio Mantilla
 

La actualidad más candente (20)

trabajo monografico
trabajo monograficotrabajo monografico
trabajo monografico
 
Presentacion http y https
Presentacion http y httpsPresentacion http y https
Presentacion http y https
 
Protocolo http y WWW
Protocolo http y WWWProtocolo http y WWW
Protocolo http y WWW
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Dn12 u3 a8_vsrg
Dn12 u3 a8_vsrgDn12 u3 a8_vsrg
Dn12 u3 a8_vsrg
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Dn12 u3 a9_jsm
Dn12 u3 a9_jsmDn12 u3 a9_jsm
Dn12 u3 a9_jsm
 
Configuración http rhel
Configuración http rhelConfiguración http rhel
Configuración http rhel
 
Cómo configurar el envío de correo a internet en exchange 2013
Cómo configurar el envío de correo a internet en exchange 2013Cómo configurar el envío de correo a internet en exchange 2013
Cómo configurar el envío de correo a internet en exchange 2013
 
Http
HttpHttp
Http
 
Rest clase 4 - curso front-end 2014 - open webinars
Rest   clase 4 - curso front-end 2014 - open webinarsRest   clase 4 - curso front-end 2014 - open webinars
Rest clase 4 - curso front-end 2014 - open webinars
 
Tecnologías web
Tecnologías webTecnologías web
Tecnologías web
 
Http[1]
Http[1]Http[1]
Http[1]
 
Dn12 u3 a9_dzlm
Dn12 u3 a9_dzlmDn12 u3 a9_dzlm
Dn12 u3 a9_dzlm
 
Protocolo http IRVING
Protocolo http IRVINGProtocolo http IRVING
Protocolo http IRVING
 
Fundamentos de la web
Fundamentos de la webFundamentos de la web
Fundamentos de la web
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Servidores, seguridad y autenticación
Servidores, seguridad y autenticaciónServidores, seguridad y autenticación
Servidores, seguridad y autenticación
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Yenny rocio mantilla villamizar ftp
Yenny rocio mantilla villamizar ftpYenny rocio mantilla villamizar ftp
Yenny rocio mantilla villamizar ftp
 

Similar a 2.12 http

html
htmlhtml
Servidores Proxy protocolo HTTP
Servidores Proxy  protocolo HTTPServidores Proxy  protocolo HTTP
Servidores Proxy protocolo HTTP
Jose Felix Moran Agusto
 
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...Didier Granados
 
ASR_Tema_3.pdf
ASR_Tema_3.pdfASR_Tema_3.pdf
ASR_Tema_3.pdf
AnonymousNdBOr4
 
PROTOCOLO HTTP
PROTOCOLO HTTPPROTOCOLO HTTP
PROTOCOLO HTTP
AdrixHrdz
 
PROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptxPROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptx
jeremydelpezo2
 
Servicios Web.pptx
Servicios Web.pptxServicios Web.pptx
Servicios Web.pptx
castlellanos
 
Curso de php
Curso de phpCurso de php
protocolo http
protocolo httpprotocolo http
protocolo http
khorack
 
protocolo HTTP.pptx
protocolo HTTP.pptxprotocolo HTTP.pptx
protocolo HTTP.pptx
MARIOALFONSOBELTRANR
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando php
Julio Alfredo Cauich Cauich
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando phpCarlos Cruz Rincon
 
Servidores web o http
Servidores web o httpServidores web o http
Servidores web o http
Jesús Baltan Ramírez
 
Protocolo HTTP
Protocolo HTTPProtocolo HTTP
Protocolo HTTP
AZURY_NENA
 

Similar a 2.12 http (20)

html
htmlhtml
html
 
Servidores Proxy protocolo HTTP
Servidores Proxy  protocolo HTTPServidores Proxy  protocolo HTTP
Servidores Proxy protocolo HTTP
 
Seguridad en web
Seguridad en webSeguridad en web
Seguridad en web
 
Protocolo http
Protocolo httpProtocolo http
Protocolo http
 
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...
Desarrollo de Aplicaciones Web II - Sesión 02 - Conceptos Generales e Introdu...
 
ASR_Tema_3.pdf
ASR_Tema_3.pdfASR_Tema_3.pdf
ASR_Tema_3.pdf
 
PROTOCOLO HTTP
PROTOCOLO HTTPPROTOCOLO HTTP
PROTOCOLO HTTP
 
Http
HttpHttp
Http
 
PROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptxPROTOCOLO HTTP.pptx
PROTOCOLO HTTP.pptx
 
Servicios Web.pptx
Servicios Web.pptxServicios Web.pptx
Servicios Web.pptx
 
Curso de php
Curso de phpCurso de php
Curso de php
 
Http
HttpHttp
Http
 
Gatox
GatoxGatox
Gatox
 
protocolo http
protocolo httpprotocolo http
protocolo http
 
protocolo HTTP.pptx
protocolo HTTP.pptxprotocolo HTTP.pptx
protocolo HTTP.pptx
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando php
 
Generación de web sites dinámicos usando php
Generación de web sites dinámicos usando phpGeneración de web sites dinámicos usando php
Generación de web sites dinámicos usando php
 
Servidores web o http
Servidores web o httpServidores web o http
Servidores web o http
 
Protocolo HTTP
Protocolo HTTPProtocolo HTTP
Protocolo HTTP
 
Pdfwebservices
PdfwebservicesPdfwebservices
Pdfwebservices
 

Más de Fernando Solis

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
AULA INVERTIDA.pdf
AULA INVERTIDA.pdfAULA INVERTIDA.pdf
AULA INVERTIDA.pdf
Fernando Solis
 
Subcadenas-en-C
Subcadenas-en-CSubcadenas-en-C
Subcadenas-en-C
Fernando Solis
 
BÚSQUEDA DE SUBCADENAS EN C
BÚSQUEDA DE SUBCADENAS EN CBÚSQUEDA DE SUBCADENAS EN C
BÚSQUEDA DE SUBCADENAS EN C
Fernando Solis
 
Almacenamiento de informacion en una estructura
Almacenamiento de informacion en una estructuraAlmacenamiento de informacion en una estructura
Almacenamiento de informacion en una estructura
Fernando Solis
 
Entrada y salida de datos
Entrada y salida de datosEntrada y salida de datos
Entrada y salida de datos
Fernando Solis
 
Longitud y Concatenacion
Longitud y ConcatenacionLongitud y Concatenacion
Longitud y Concatenacion
Fernando Solis
 
Lectura de datos de cadena
Lectura de datos de cadenaLectura de datos de cadena
Lectura de datos de cadena
Fernando Solis
 
Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)
Fernando Solis
 
Archivos Binarios vs Archivos de Texto
Archivos Binarios vs Archivos de TextoArchivos Binarios vs Archivos de Texto
Archivos Binarios vs Archivos de Texto
Fernando Solis
 
DEFINICION DE CADENAS O STRINGS
DEFINICION DE CADENAS O STRINGSDEFINICION DE CADENAS O STRINGS
DEFINICION DE CADENAS O STRINGS
Fernando Solis
 
Declaración e inicialización de variables de tipo cadena
Declaración e inicialización de variables de tipo cadenaDeclaración e inicialización de variables de tipo cadena
Declaración e inicialización de variables de tipo cadena
Fernando Solis
 
Conversion de Strings
Conversion de StringsConversion de Strings
Conversion de Strings
Fernando Solis
 
Comparacion de arreglos Strings
Comparacion de arreglos StringsComparacion de arreglos Strings
Comparacion de arreglos Strings
Fernando Solis
 
Cadenas y/o strings
Cadenas y/o stringsCadenas y/o strings
Cadenas y/o strings
Fernando Solis
 
Asignacion
AsignacionAsignacion
Asignacion
Fernando Solis
 
Acceso en tipos de datos abstractos
Acceso en tipos de datos abstractosAcceso en tipos de datos abstractos
Acceso en tipos de datos abstractos
Fernando Solis
 
Arreglo Orden Seleccion
Arreglo  Orden SeleccionArreglo  Orden Seleccion
Arreglo Orden Seleccion
Fernando Solis
 
Algoritmos de Busqueda
Algoritmos de BusquedaAlgoritmos de Busqueda
Algoritmos de Busqueda
Fernando Solis
 
Quick Sort
Quick SortQuick Sort
Quick Sort
Fernando Solis
 

Más de Fernando Solis (20)

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
AULA INVERTIDA.pdf
AULA INVERTIDA.pdfAULA INVERTIDA.pdf
AULA INVERTIDA.pdf
 
Subcadenas-en-C
Subcadenas-en-CSubcadenas-en-C
Subcadenas-en-C
 
BÚSQUEDA DE SUBCADENAS EN C
BÚSQUEDA DE SUBCADENAS EN CBÚSQUEDA DE SUBCADENAS EN C
BÚSQUEDA DE SUBCADENAS EN C
 
Almacenamiento de informacion en una estructura
Almacenamiento de informacion en una estructuraAlmacenamiento de informacion en una estructura
Almacenamiento de informacion en una estructura
 
Entrada y salida de datos
Entrada y salida de datosEntrada y salida de datos
Entrada y salida de datos
 
Longitud y Concatenacion
Longitud y ConcatenacionLongitud y Concatenacion
Longitud y Concatenacion
 
Lectura de datos de cadena
Lectura de datos de cadenaLectura de datos de cadena
Lectura de datos de cadena
 
Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)
 
Archivos Binarios vs Archivos de Texto
Archivos Binarios vs Archivos de TextoArchivos Binarios vs Archivos de Texto
Archivos Binarios vs Archivos de Texto
 
DEFINICION DE CADENAS O STRINGS
DEFINICION DE CADENAS O STRINGSDEFINICION DE CADENAS O STRINGS
DEFINICION DE CADENAS O STRINGS
 
Declaración e inicialización de variables de tipo cadena
Declaración e inicialización de variables de tipo cadenaDeclaración e inicialización de variables de tipo cadena
Declaración e inicialización de variables de tipo cadena
 
Conversion de Strings
Conversion de StringsConversion de Strings
Conversion de Strings
 
Comparacion de arreglos Strings
Comparacion de arreglos StringsComparacion de arreglos Strings
Comparacion de arreglos Strings
 
Cadenas y/o strings
Cadenas y/o stringsCadenas y/o strings
Cadenas y/o strings
 
Asignacion
AsignacionAsignacion
Asignacion
 
Acceso en tipos de datos abstractos
Acceso en tipos de datos abstractosAcceso en tipos de datos abstractos
Acceso en tipos de datos abstractos
 
Arreglo Orden Seleccion
Arreglo  Orden SeleccionArreglo  Orden Seleccion
Arreglo Orden Seleccion
 
Algoritmos de Busqueda
Algoritmos de BusquedaAlgoritmos de Busqueda
Algoritmos de Busqueda
 
Quick Sort
Quick SortQuick Sort
Quick Sort
 

Último

Tango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprenderTango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprender
AgostinaZarate
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
SamuelGampley
 
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
JhenryHuisa1
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
AbbieDominguezGirond
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
KatiuskaDominguez2
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
AlanL15
 

Último (6)

Tango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprenderTango-Gestion-Delta2.pdf...para aprender
Tango-Gestion-Delta2.pdf...para aprender
 
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJECONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
CONCEPTOS DE PROGRAMACION CUALQUIER LENGUAJE
 
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdfPC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
PC-04-DISEÑOS DE PITS Y STOPES DE UNA MINA A TAJO ABIERTO.pdf
 
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdfIntroducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
Introducción_a_las_APIs_y_Desarrollo_Back-end-Abbie Dominguez Girondo.pdf
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptxTECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
TECLADO ERGONÓMICO Y PANTALLAS TACTILES.pptx
 
Arquitectura de Sistema de Reservaciones
Arquitectura de Sistema de ReservacionesArquitectura de Sistema de Reservaciones
Arquitectura de Sistema de Reservaciones
 

2.12 http

  • 2. PROTOCOLO HTTP ALGUNAS DEF.- *HTTP (HyperText Transfer Protocol) protocolo de transferencia de hipertexto es un conjunto de reglas que rigen la transferencia de datos en una comunicación Web. *Es un protocolo cliente-servidor que articula los intercambios de información entre los clientes Web y los servidores http. *HTTP define la sintaxis y la semántica que utilizan los elementos software de la arquitectura Web (cliente-servidor, proxies) para comunicarse.
  • 3. Su finalidad es la transferencia de hipertexto o texto con componentes y enlaces a otros textos pero en la actualidad es utilizado tanto para la transferencia de hipertexto como para la transferencia de ficheros (carga y descarga), datos y trafico de red. Se usa tanto para que el navegador pida una pagina a un servidor como para que este envíe la pagina solicitada al navegador. Esta basado en el envío de comandos y respuestas en texto ASCII. Al que hace la petición se le llama “user agent” (agente usuario). A la información transmitida se le llama “recurso” puede ser archivo, resultado de ejecución, etc.
  • 4. Una transacción HTTP consiste básicamente en:  Conexión.- establecimiento de una conexión cliente-servidor. Por el puerto TCP/IP 80 es el más conocido pero se pueden usar otros no reservados.  Solicitud.- envío por parte del cliente de un mensaje de solicitud al servidor.  Respuesta.- envío por parte del servidor de una respuesta al cliente.  Cierre.- fin de la conexión por parte del cliente y el servidor. HTTP es un protocolo sin estado es decir que no guarda ninguna información sobre conexiones anteriores.
  • 5. El desarrollo de aplicaciones Web necesita frecuentemente mantener estado. Para esto se usan los “cookies” que es información que un servidor puede almacenar en el sistema cliente. Esto le permite a las aplicaciones Web instituir la noción de sesión y también permite rastrear usuarios ya que los “cookies” pueden guardarse en el cliente por tiempo indeterminado.
  • 6. FUNCIONAMIENTO DEL PROTOCOLO HTTP A continuación se muestra una petición HTTP típica, de una pagina Web: GET / HTTP/1.1  Host: www.24x7linux.com  User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2b) Gecko/20021016  Accept:text/xml,application/xml,application/xhtml +xml,text/html;q=0.9, text/plain;q=0.8,video/x- mng,image/png,image/jpeg,image/gif;q=0.2, text/css,*/*;q=0.1  Accept-Language: es-es, en-us;q=0.66, en;q=0.33  Accept-Encoding: gzip, deflate, compress;q=0.9  Accept-Charset: ISO-8859-15, utf-8;q=0.66, *;q=0.66  Keep-Alive: 300  Connection: keep-alive
  • 7. RESPUESTA DEL SERVIDOR HTTP/1.1 200 OK  Date: Sun, 10 Nov 2002 22:50:55 GMT  Server: Apache/1.3.26 (Unix) mod_bwlimited/1.0 PHP/4.2.2 mod_log_bytes/0.3 FrontPage/5.0.2.2510 mod_ssl/2.8.9 OpenSSL/0.9.6b  Content-Type: text/html  Age: 130  Connection: close  <-- archivo index.html que contiene la página principal del sitio -->
  • 8. Si en lugar de pedir una pagina en formato HTML se solicita un recurso binario, como por ejemplo un archivo gráfico, la respuesta será de la forma siguiente: HTTP/1.1 200 OK  Date: Sun, 10 Nov 2002 23:15:31 GMT  Server: Apache/1.3.26 (Unix) mod_bwlimited/1.0 PHP/4.2.2 mod_log_bytes/0.3 FrontPage/5.0.2.2510 mod_ssl/2.8.9 OpenSSL/0.9.6b  Last-Modified: Fri, 01 Nov 2002 12:23:38 GMT  ETag: "23c32f-171cb-3dc2724a"  Accept-Ranges: bytes  Content-Length: 94667  Content-Type: image/png  Age: 131
  • 9. EL SERVIDOR PUEDE TENER ALGUNA DE LAS SIGUIENTES RESPUESTAS: 100 Continua 101 Cambio de protocolo 200 OK 201 Creado 202 Aceptado 203 Información no oficial 204 Sin Contenido 205 Contenido para reset 206 Contenido parcial 300 Múltiples posibilidades 301 Mudado permanentemente 302 Encontrado 303 Vea otros 304 No modificado 305 Utilice un proxy 307 Redirección temporal 400 Solicitud incorrecta 401 No autorizado 402 Pago requerido 403 Prohibido
  • 10. 404 No encontrado 405 Método no permitido 406 No aceptable 407 Proxy requerido 408 Tiempo de espera agotado 409 Conflicto 410 No mapas disponible 411 Requiere longitud 412 Falló precondición 413 Entidad de solicitud demasiado larga 414 URI de solicitud demasiado largo 415 Tipo de medio no soportado 416 Rango solicitado no disponible 417 Falló expectativa 500 Error interno 501 No implementado 502 Pasarela incorrecta 503 Servicio no disponible 504 Tiempo de espera de la pasarela agotado 505 Versión de HTTP no soportada