Académique Documents
Professionnel Documents
Culture Documents
TCP/IP
Comutao de pacotes: ca Mensagem dividida em pacotes. e Cada pacote enviado de modo indee pendente Mensagem reconstru no destino e da
TCP/IP (cont.)
A WWW uma aplicao em rede que utie ca liza o TCP/IP para comunicar atravs da e Internet.
Quando um browser pede uma pgina a um a servidor web, o TCP/IP cria uma ligao ca virtual entre os dois intervenientes.
Endereos IP c
Cada computador necessita de ser identicado atravs de um endereo global nico e c u (endereo IP). c
Um computador ligado ` rede necessita de a pelo menos um endereo IP. Um n que c o liga duas redes necessita de dois endereos c IP.
Endereos IP so nmeros de 32 bits. c a u (geralmente escritos na forma de 4 bytes separados por um ponto, ex: 134.148.250.28)
Portos
Quando criada uma ligao virtual entre e ca 2 computadores, associado um porto a e cada um.
Permite que possa haver mltiplas conexes u o a um computador feitas por aplicaes diferco entes.
Primeira verso foi HTTP/0.9. a Em 1996 apareceu a verso 1.0. a Em 1999 apareceu a verso 1.1. a
Podemos simular um pedido HTTP e observar a resposta atravs de uma ligao e ca telnet ao porto 80.
Exemplo:
Exemplo
telnet diana.uceh.ualg.pt 80 Trying 10.10.23.13... Connected to diana.uceh.ualg.pt. Escape character is ^]. HEAD /index.html HTTP/1.0
HTTP/1.1 200 OK Date: Mon, 15 Mar 2004 08:53:46 GMT Server: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.3.4 mod_ Last-Modified: Sun, 22 Feb 2004 19:11:21 GMT ETag: "eb37d-1400-4038fed9" Accept-Ranges: bytes Content-Length: 5120 Connection: close Content-Type: text/html; charset=iso-8859-1 Connection closed by foreign host.
10
Outro exemplo
telnet diana.uceh.ualg.pt 80 Trying 10.10.23.13... Connected to diana.uceh.ualg.pt. Escape character is ^]. GET /~figo/ola.html HTTP/1.0
HTTP/1.1 200 OK Date: Mon, 15 Mar 2004 08:58:34 GMT Server: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.3.4 mod_ Last-Modified: Tue, 02 Dec 2003 08:50:14 GMT ETag: "2112278a-6b-3fcc5246" Accept-Ranges: bytes Content-Length: 107 Connection: close Content-Type: text/html; charset=iso-8859-1 <html> <head> <title>teste</title> </head> <body> <p> Ol, o meu nome Lus Figo. a e </p> </body> </html> Connection closed by foreign host.
11
URL pode ser decomposta em 3 partes: 1. Protocolo 2. Host e identicao do servio ca c 3. Identicao de um recurso ca
Exemplo: http://diana.uceh.ualg.pt/~figo/ola.html
12
URLs (cont.)
URLs (cont.)
URLs (cont.)
Identicao de um recurso ca
constitu por um caminho (path), parmetros e do a opcionais, e queries opcionais a serem processadas pelo servidor web.
Exemplo: O servidor web www.exemplo.com poder guardar todos os documentos web a debaixo do directrio. o /usr/local/apache/htdocs A resposta HTTP ao pedido:
15
http://www.exemplo.com/marketing/index.html
Contem o cheiro:
/usr/local/apache/htdocs/marketing/index.html
programa
input
16
URL encoding
& %) tm e
17
Pedidos HTTP
Um pedido HTTP contem um nome de um mtodo, o recurso pretendido, e um cone junto de cabealhos. c
18
GET - devolve o recurso. Podemos usar uma query para adicionar informao extra ao pedido (ex: parmetros ca a para uma pesquisa a uma BD)
POST - envia dados para o servidor. Os dados so enviados no corpo da mena sagem. No so colocados no URL. a a
19
Utilizar POST se: O resultado do pedido tem efeitos persistentes no servidor (ex: modica algo numa BD) houver bastantes dados a serem enviados (formulrios compridos). a Utilizar GET se: se pretende apenas fazer uma pesquisa. no h efeitos persistentes no servidor. a a os dados dos input elds tm menos de e 1K.
20
Respostas HTTP
Linha de status
Cabealhos c
21
Status codes: codes 100-199 200-299 300-399 400-499 500-599 meaning Informational Client request successful Client request redirected Cliente request error Server errors
22