Diferencia entre revisiones de «Apache»

De Jose Castillo Aliaga
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Línea 77: Línea 77:
== Etapes d'una comunicació en HTTP ==
== Etapes d'una comunicació en HTTP ==


1) Un usuari accedeix a una adreça d’Internet (URL) seleccionant un en-
# Un usuari accedeix a una adreça d’Internet (URL) seleccionant un en-
llaç d’un document HTML o introduint-la directament a la barra de nave-
llaç d’un document HTML o introduint-la directament a la barra de nave-
gació d’un navegador web des de la perspectiva del client web.
gació d’un navegador web des de la perspectiva del client web.
2) El client web descodifica l’adreça d’Internet (URL) separant-ne les di-
# El client web descodifica l’adreça d’Internet (URL) separant-ne les di-
ferents parts. És així com s’identifiquen el protocol d’accés, l’adreça del
ferents parts. És així com s’identifiquen el protocol d’accés, l’adreça del
servidor de noms de domini (DNS,  
servidor de noms de domini (DNS,  
Línea 87: Línea 87:
(IP) del servidor, el possible port opcional (el valor per defecte és el 80) i
(IP) del servidor, el possible port opcional (el valor per defecte és el 80) i
l’objecte del servidor requerit.
l’objecte del servidor requerit.
3) S’obre una connexió TCP/IP amb el servidor cridant el port TCP corres-
# S’obre una connexió TCP/IP amb el servidor cridant el port TCP corres-
ponent.  Es  fa  la  petició.  En  conseqüència,  s’envien  l’ordre  necessària
ponent.  Es  fa  la  petició.  En  conseqüència,  s’envien  l’ordre  necessària
(GET, POST, HEAD, etc.), l’adreça de l’objecte requerit (el contingut de
(GET, POST, HEAD, etc.), l’adreça de l’objecte requerit (el contingut de
Línea 94: Línea 94:
ció que inclou dades sobre les capacitats del navegador web, dades opcio-
ció que inclou dades sobre les capacitats del navegador web, dades opcio-
nals per al servidor, etc.
nals per al servidor, etc.
4) El servidor retorna la resposta al client. Aquesta resposta consisteix en
# El servidor retorna la resposta al client. Aquesta resposta consisteix en
un codi d’estat i el tipus de dada amb extensions multipropòsit de correu
un codi d’estat i el tipus de dada amb extensions multipropòsit de correu
d’Internet (MIME,  
d’Internet (MIME,  
Línea 100: Línea 100:
) de la informa-
) de la informa-
ció de tornada, seguit de la mateixa informació.
ció de tornada, seguit de la mateixa informació.
5) Es tanca la connexió TCP.
# Es tanca la connexió TCP.
Aquest procés es repeteix en cada accés que es faci al servidor HTTP. Per
Aquest procés es repeteix en cada accés que es faci al servidor HTTP. Per
exemple, si es recull un document HTML que conté quatre imatges, el pro-
exemple, si es recull un document HTML que conté quatre imatges, el pro-

Revisión del 10:46 28 feb 2018

El protocol HTTP (HyperText Transfer Protocol) és un protocol de capa d'aplicació per a la comunicació fonamentalment de la World Wide Web. Encara que hui en dia el seu ús és més divers. S'ha convertit en un estàndard per a la comunicació entre el model i la vista en alguns projectes en moltes tecnologies actuals. El seus usos principals són:

  • Pàgines web
  • Publicació senzilla de fitxers per a descarregar.
  • Comunicació entre client-servidor en aplicacions web, mòbils o altres. (XML, Json)

El protocol HTTP, si es combina amb una capa segura SSL, s'anomena HTTPS i permet una comunicació segura.

Un servidor http necessita:

  • Connexió a Internet
  • Espai en disc
  • Suficient potència per servir simultàniament a molts usuaris en moments puntuals.
  • Un servidor web/http generalment crea un procés nou per cada petició.

Conceptes

  • URL: Uniform Resource Locator

Una URL informa de:

  • El nom DNS de la màquina en la que està el recurs.
  • El protocol en el que es demana (http, https, ftp...)
  • La direcció del recurs en la màquina o la manera d'accedir a aquest recurs.

Una URL per a HTTP completa pot ser:

  http://www.exemple.com:80/~jose/privada/login.php
   ^      ^    ^          ^   ^     ^        ^
   |      |    |          |   |     |        |
Protocol  |  Domini     Port  |  Directori  Document php (retornarà un html)
          |                   |     
          |       Alias de directori personal
   (World Wide Web)

HTTP

El protocol de transferència d’hipertext (HTTP, hyperText transfer pro-tocol) és el motor que dóna vida a Internet, ja que és la base per a la web (www,world wide web).

És en els inicis del protocol HTTP, a mitjans de l’any 1990, quan trobem la versió 0.9. Aquesta versió tenia com a única finalitat transferir dades per Internet en forma de pàgines web escrites en llenguatge de marcatge d’hipertext (HTML, Hyper Text Markup Language). A partir de la versió 1.0 del protocol va sorgir la possibilitat de transferir missatges amb encap- çalaments que descrivien el contingut dels missatges.

El protocol de transferència d’hipertext (HTTP) és un protocol client-ser- vidor força senzill que articula els intercanvis d’informació entre els clients web i els servidors HTTP. HTTP va ser desenvolupat pel consorci W3C i la IETF. Aquesta col·laboració va culminar l’any 1999 amb la publicació d’una sèrie de RFC, el més important dels quals va ser el RFC 2616, que especi- ficava la versió 1.1. Des del punt de vista de les comunicacions, està suportat en els serveis de connexió TCP/IP i funciona de la mateixa manera que la resta de serveis propis dels entorns UNIX.

Tècnicament, un procés servidor escolta en un port de comunicacions TCP (per defecte, el 80) i espera les sol·licituds de connexió dels clients web. Una vegada establerta la connexió, el protocol TCP s’encarrega de mantenir la comunicació i garantir un intercanvi de dades lliure d’errors.

El protocol de transferència d’hipertext es basa en operacions senzilles de sol·licitud/resposta. Quan un client estableix una connexió amb un servi- dor i envia un missatge amb les dades de la sol·licitud, el servidor respon amb un missatge similar, que conté l’estat de l’operació i el seu resultat possible. Totes les operacions poden adjuntar un objecte o recurs sobre el qual actuen; cada objecte web (document HTML, arxiu multimèdia o apli- cació CGI) és conegut pel seu localitzador uniforme de recursos (URL, uniform resource locator). Els recursos poden ser arxius, el resultat de l’execució d’un programa, una consulta a una base de dades, la traducció automàtica d’un document, etc.

HTTP és un protocol sense estat, és a dir, no guarda cap informació sobre connexions anteriors. El desenvolupament d’aplicacions web freqüent- ment necessita mantenir estat. Per això s’utilitzen les galetes ( cookies), és a dir, la informació que un servidor pot emmagatzemar en el sistema client. Això permet que les aplicacions web institueixin la noció de “ses- sió”, i, alhora, permet rastrejar usuaris, ja que les galetes es poden emma- gatzemar en el client durant un temps indeterminat

Etapes d'una comunicació en HTTP

  1. Un usuari accedeix a una adreça d’Internet (URL) seleccionant un en-

llaç d’un document HTML o introduint-la directament a la barra de nave- gació d’un navegador web des de la perspectiva del client web.

  1. El client web descodifica l’adreça d’Internet (URL) separant-ne les di-

ferents parts. És així com s’identifiquen el protocol d’accés, l’adreça del servidor de noms de domini (DNS, Domain Name Server ) o d’Internet (IP) del servidor, el possible port opcional (el valor per defecte és el 80) i l’objecte del servidor requerit.

  1. S’obre una connexió TCP/IP amb el servidor cridant el port TCP corres-

ponent. Es fa la petició. En conseqüència, s’envien l’ordre necessària (GET, POST, HEAD, etc.), l’adreça de l’objecte requerit (el contingut de l’adreça d’Internet del servidor), la versió del protocol HTTP utilitzada (en la major part de les ocasions és HTTP/1.0) i un conjunt variable d’informa- ció que inclou dades sobre les capacitats del navegador web, dades opcio- nals per al servidor, etc.

  1. El servidor retorna la resposta al client. Aquesta resposta consisteix en

un codi d’estat i el tipus de dada amb extensions multipropòsit de correu d’Internet (MIME, Multipurpose Internet Mail Extension ) de la informa- ció de tornada, seguit de la mateixa informació.

  1. Es tanca la connexió TCP.

Aquest procés es repeteix en cada accés que es faci al servidor HTTP. Per exemple, si es recull un document HTML que conté quatre imatges, el pro- cés de transició mostrat amb anterioritat es repeteix cinc vegades, és a dir, una pel document HTML i quatre per les imatges.

Apache

Enllaços

Utilitats

curl sense hosts