1. Instituto Superior de Entre Douro e Vouga
Tecnologias da Informação e da Comunicação│2011/2012
Tecnologia de Internet
Trabalho realizado por:
Liliana João Monteiro da Costa
Santa Maria da Feira, 11 Novembro de 2011
2. 2- Tecnologias de Internet HTTP
ÍNDICE
1.HTTP (Hyper Text Transfer Protocol) -------------------------------------------------------- 2
1.1. Introdução---------------------------------------------------------------------------- 2
1.2 Funcionamento do Protocolo http-------------------------------------------------- 3
1.3 Protocolo TCP e IPI-------------------------------------------------------------------- 3
1.4 Pedido http------------------------------------------------------------------------------- 4
1.5 Comandos-------------------------------------------------------------------------------- 5
1.6 Rubricas---------------------------------------------------------------------------------- 5
1.7 Resposta http--------------------------------------------------------------------------- 7
1.8 Corpo da Resposta-------------------------------------------------------------------- 8
1.9 Os códigos de resposta--------------------------------------------------------------- 9
2. URL--------------------------------------------------------------------------------------------------- 9
2.1Estrutura de uma URL----------------------------------------------------------------- 10
3.CONCLUSÃO--------------------------------------------------------------------------------------- 11
4.BIBLIOGRAFIA ------------------------------------------------------------------------------------ 12
Liliana Costa 3722 ISVOUGA Página 1 de 12
3. 2- Tecnologias de Internet HTTP
2. HTTP (Hyper Text Transfer Protocol)
2.1. Introdução
Um protocolo é um método standard que permite a comunicação entre processos (que
se executam eventualmente em diferentes máquinas), isto é, um conjunto de regras e
procedimentos a respeitar para emitir e receber dados numa rede. Existem vários, de
acordo com o que se espera da comunicação. Certos protocolos, por exemplo, serão
especializados na troca de ficheiros (o FTP), outros poderão servir para gerir
simplesmente o estado da transmissão e os erros (é o caso do protocolo ICMP), …
Na Internet, os protocolos utilizados fazem parte de uma sequência de protocolos, quer
dizer, de um conjunto de protocolos. Esta sequência de protocolos chama-se TCP/IP.
Esta contém, designadamente, os seguintes protocolos:
HTTP FTP ARP ICMP IP TCP UDP SMTP Telnet NNTP
HTTP é a sigla em língua inglesa de HyperText Transfer Protocol (Protocolo de
Transferência de Hipertexto), um protocolo da camada de Aplicação do modelo OSI
utilizado para transferência de dados na rede mundial de computadores, a World Wide
Web.
Normalmente, este protocolo utiliza a porta 80 e é usado para a comunicação de "sites"
(sítios), comunicando na linguagem HTML (Hipertext Markup Language, ou Linguagem
de Marcação de Hipertexto). Contudo, para haver comunicação com o servidor do site
é necessário utilizar comandos adequados, que não estão em linguagem HTML.
Para acedermos a outro documento a partir de uma palavra presente no documento
actual podemos utilizar os chamados links/ (ligações) ou âncoras. Estes documentos
encontram-se num "site" (sítio) com um endereço de página da Internet - e para
entrarmos neles devemos digitar o respectivo endereço, denominado URI (Universal
Resource Indentifier ou Identificador Universal de Recurso), que não deve ser
confundido com URL (Universal Resource Locator ou Localizador Universal de
Recurso), um tipo de URI que pode ser directamente localizado.
Liliana Costa 3722 ISVOUGA Página 2 de 12
4. 2- Tecnologias de Internet HTTP
1.2 Funcionamento do Protocolo http
Um sistema de comunicação em rede possui diversos protocolos que trabalham em
conjunto para o fornecimento de serviços. Para que o protocolo HTTP consiga transferir
seus dados pela Web, é necessário que os protocolos TCP e IP (Internet Protocol,
Protocolo de Internet) tornem possível a conexão entre clientes e servidores através de
Socke TCP/IP
1.3 Protocolo TCP e IPI
O modelo TCP/IP - como muitos outros modelos de protocolos - pode ser visto como um grupo
de camadas, em que cada uma resolve um grupo de problemas da transmissão de dados,
fornecendo um serviço bem definido para os protocolos da camada superior. Estas camadas
mais altas estão logicamente mais perto do usuário (camada de aplicação), lidam com dados
mais abstratos e confiam nos protocolos das camadas mais baixas para traduzir dados em num
formato que pode eventualmente se transmitido fisicamente.
A comunicação entre o navegador e o servidor faz-se em dois tempos:
O navegador efectua um pedido HTTP
O servidor trata o pedido e seguidamente envia uma resposta http
Liliana Costa 3722 ISVOUGA Página 3 de 12
5. 2- Tecnologias de Internet HTTP
1.4 Pedido HTTP
Um pedido HTTP é um conjunto de linhas enviado ao servidor pelo navegador:
Uma linha de pedido: A linha compreende três elementos que devem ser
separados por um espaço:
o O método
o O URL
o A versão do protocolo utilizado pelo cliente (geralmente HTTP/1.0) ;
Os campos de cabeçalho do pedido: trata-se de um conjunto de linhas
facultativas que permitem dar informações suplementares sobre o pedido e/ou o
cliente (Navegador, sistema de exploração, …). Cada uma destas linhas é
composta por um nome que qualifica o tipo de cabeçalho, seguido de dois
pontos (:) e do valor do cabeçalho;
O corpo do pedido: é um conjunto de linhas opcionais que devem ser
separadas das linhas precedentes por uma linha vazia e permitindo por exemplo
um envio de dados por um comando POST aquando do envio de dados ao
servidor por um formulário.
Um pedido HTTP tem por conseguinte a sintaxe seguinte (<crlf> significa regresso salto
de linha):
METHODE URL VERSION<crlf>
EN-TETE: Valeur<crlf>
.
.
.
EN-TETE : Valeur<crlf>
Ligne vide<crlf>
CORPS DE LA REQUETE
Eis então um exemplo de pedido HTTP:
GET http://pt.kioskea.net HTTP/1.0
Accept : text/html
If-Modified-Since : Saturday, 15-January-2000 14:37:11 GMT
User-Agent : Mozilla/4.0 (compatible; MSIE 5.0; Windows 95)
Liliana Costa 3722 ISVOUGA Página 4 de 12
6. 2- Tecnologias de Internet HTTP
1.5 Comandos:
GET Pedido do recurso situado na URL especificada
HEAD Pedido do cabeçalho do recurso situado na URL
especificada
POST Envio de dados ao programa situado na URL especificada
PUT Envio de dados à URL especificada
DELETE Supressão do recurso situado na URL especificada
1.6 Rubricas:
Accept:
Tipo de conteúdo aceite pelo motor de pesquisa (por exemplo text/HTML).
Accept-Charset:
Jogo de caracteres esperado pelo motor de pesquisa
Accept-Encoding
Codificação de dados aceite pelo motor de pesquisa
Accept-Language
Linguagem esperada pelo motor de pesquisa (inglês, por defeito)
Authorization
Identificação do motor de pesquisa junto do servidor
Content-Encoding
Tipo de codificação do corpo do pedido
Liliana Costa 3722 ISVOUGA Página 5 de 12
7. 2- Tecnologias de Internet HTTP
Content-Language
Tipo de linguagem do corpo do pedido
Content-Length
Comprimento do corpo do pedido
Content-Type
Tipo de conteúdo do corpo do pedido (por exemplo text/HTML).
Date
Data de início de transferência dos dados
Forwarded
Utilizado pelas máquinas intermédias entre o motor de pesquisa e o servidor
From
Permite especificar o e-mail do cliente
Permite especificar que o documento deve ser enviado se tiver sido alterado a
partir de uma certa data
Link
Relação entre duas URL
Orig-URL
URL de origem do pedido
Referer
URL da ligação a partir da qual o pedido foi efectuado
Liliana Costa 3722 ISVOUGA Página 6 de 12
8. 2- Tecnologias de Internet HTTP
User-Agent
Cadeia dando informações sobre o cliente, como o nome e a versão do
navegador, do sistema de exploração
1.7 Resposta HTTP
Uma resposta HTTP é um conjunto de linhas enviadas ao navegador pelo servidor.
Compreende:
Uma linha de estatuto: é uma linha que precisa a versão do protocolo utilizado
e o estado do tratamento do pedido através de um código e de um texto
explicativo. A linha compreende três elementos que devem ser separados por
um espaço:
o A versão do protocolo utilizado
o O código de estatuto
o O significado do código
Os campos de rubrica da resposta: trata-se de um conjunto de linhas
facultativas que permitem dar informações suplementares sobre a resposta e/ou
o servidor. Cada uma destas linhas é composta de um nome que qualifica o tipo
de rubrica, seguido de dois pontos (:) e do valor da rubrica
O corpo da resposta: contem o documento pedido
Uma resposta HTTP tem por conseguinte a sintaxe seguinte (<crlf> significa salto de linha) :
VERSION-HTTP CODE EXPLICATION<crlf>
EN-TETE: Valeur<crlf>
.
.
.
EN-TETE: Valeur<crlf>
Ligne vide<crlf>
CORPS DE LA REPONSE
Eis aqui um exemplo de resposta HTTP :
HTTP/1.0 200 OK
Date: Sat, 15 Jan 2000 14:37:12 GMT
Liliana Costa 3722 ISVOUGA Página 7 de 12
9. 2- Tecnologias de Internet HTTP
Server: Microsoft-IIS/2.0
Content-Type: text/HTML
Content-Length: 1245
Last-Modified: Fri, 14 Jan 2000 08:25:13 GMT
1.8 Corpo da Resposta
Content-Encoding
Tipo de codificação do corpo da resposta
Content- Language
Comprimento do corpo da resposta
Content-Length
Tipo de conteúdo do corpo da resposta (por exemplo text/HTML)
Date
Data de início de transferência dos dados
Expires
Data limite de consumo dos dados
Forwarded
Utilizado pelas máquinas intermédias entre o motor de pesquisa e o servidor
Location
Redireccionamento para uma nova URL associada ao documento
Server
Características do servidor que envia a resposta
Liliana Costa 3722 ISVOUGA Página 8 de 12
10. 2- Tecnologias de Internet HTTP
1.9 Os códigos de resposta
São os códigos que vêem quando o navegador não lhe consegue mostrar a página
pedida. O código de resposta é constituído por três algarismos: o primeiro indica a
classe de estatuto e seguintes a natureza exacta do erro.
2. URL
Uma URL (Uniform Resource Locator) é um formato de designação universal para
designar um recurso na Internet. Trata-se de uma cadeia de caracteres ASCII que se
decompõe em cinco partes:
O nome do protocolo: quer dizer, em certa medida, a linguagem utilizada para
comunicar na rede. O protocolo mais utilizado é o protocolo HTTP (HyperText
Transfer Protocol), o protocolo que permite trocar páginas Web em formato
HTML. Contudo, numerosos protocolos são utilizáveis (FTP, News, Mailto,
Gopher, …)
Identificador e palavra - passe: permite especificar os parâmetros de acesso a
um servidor protegido. Esta opção é desaconselhada porque a palavra - passe é
visível na URL
O nome do servidor : Trata-se de um nome de domínio do computador que
aloja o recurso pedido. Repare que é possível utilizar o endereço IP do servidor,
que torna em contrapartida a URL menos legível.
O número de porta: trata-se de um número associado a um serviço que permite
ao servidor saber que tipo de recurso é pedido. A porta associada por defeito ao
protocolo é a porta número 80. Assim, quando o serviço Web do servidor é
associado ao número de porta 80, o número de porta é facultativo
O caminho de acesso ao recurso: Esta última parte permite ao servidor
conhecer o lugar onde o recurso está situado, ou seja, o lugar (directório) e o
nome do ficheiro pedido
Liliana Costa 3722 ISVOUGA Página 9 de 12
11. 2- Tecnologias de Internet HTTP
2.1 Estrutura de uma URL:
Porta
Protocolo palavra-passe
Nome do servidor (facultativa Caminho
(facultativa
se 80)
[http://] /glossair/glossair.php
user:password@ pt.kioskea.net :80
3
Liliana Costa 3722 ISVOUGA Página 10 de 12
12. 2- Tecnologias de Internet HTTP
3. CONCLUSÃO
O Protocolo HTTP tem uma característica que é fundamental para o entendimento de
quem analisa a segurança em aplicações WEB, é o facto de ele ser stateless, isto
significa que ele não mantém uma conexão, ele sempre se conecta, envia uma
mensagem, recebe uma resposta e desconecta. Por este motivo são utilizados
recursos extras como cookies e/ou sessões para garantira persistência dos dados e
informações que são disponibilizadas em aplicações. Quando estamos a falar de
aplicações WEB geralmente estamos a fazer referência à URL (Uniform Resource
Locators) como http://www.isvouga.pt, tecnicamente a URL serve apenas para fazer
referência a um determinado domínio, quando precisamos aceder a recursos WEB via
browser utilizamos a URI (Uniform Resource Identifiers). Para conseguir-mos identificar
e explorar determinados recursos de uma aplicação é essencial que se entenda
exactamente o que cada parte de uma URI representa. Em suma o http é o protocolo
aplicacional de comunicação entre clientes e servidores na Web, que utiliza
normalmente a pilha de protocolos TCP/IP para garantir um canal de comunicação
fiável. Tem vários métodos, sendo os mais utilizados os GET e POST. Estes dois
métodos permitem enviar informação nos dois sentidos, entre cliente e servidor Web
Liliana Costa 3722 ISVOUGA Página 11 de 12
13. 2- Tecnologias de Internet HTTP
4.BIBLIOGRAFIA
http://pt.kioskea.net/contents/internet/http.php3
http://pt.wikipedia.org/wiki/Hypertext_Transfer_Protocol
http://pt.wikiversity.org/wiki/Introdu%C3%A7%C3%A3o_%C3%A0s_Redes_de_
Computadores/WWW_e_HTTP
http://www.oficinadanet.com.br/artigo/459/o_protocolo_http
Liliana Costa 3722 ISVOUGA Página 12 de 12