24 de agosto de 2008

Conheça e entenda o HTTP

Segundo a Wikipédia:

HTTP (acrônimo para Hypertext Transfer Protocol, que significa Protocolo de Transferência de Hipertexto) é um protocolo de comunicação (na camada de aplicação segundo o Modelo OSI) utilizado para transferir dados por intranets e pela World Wide Web.

Simplificando, o HTTP é um conjunto de regras para as comunicações realizadas por user-agents (robôs de busca, browsers) em servidores Web. Neste artigo e nos próximos, vou explicar um pouco mais sobre esse protocolo e como um site chega ao monitor do usuário.

Diálogo por HTTP


Quando um site é acessado, o user-agent (o Firefox, por exemplo), pede (faz uma requisição) de algum arquivo em um servidor web (o servidor em que o site está hospedado).

O user-agent faz uma requisição assim:
GET /apps HTTP/1.1
Host: www.google.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pt-PT; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5


O GET diz ao servidor web que o user-agent quer "pegar" o diretório "/apps". Esse diretório (pasta) está no host www.google.com
Na terceira linha, o user-agent se apresenta, diz o seu nome (Firefox/3.0.1), o mecanismo de layout (Gecko), onde está instalado
(Linux), entre outras informações. A quarta linha é aonde o user-agent diz os tipos de arquivo que quer receber.

O servidor web recebe a mensagem, e se tudo estiver certo, entrega os documentos pedidos e responde assim:

HTTP/1.x 200 OK
Date: Mon, 12 Dec 2005 04:15:03 GMT
Server: Apache/1.3.33 (Unix) DAV/1.0.3 mod_fastcgi/2.4.2 mod_gzip/1.3.26.1a PHP/4.3.10 mod_ssl/2.8.22 OpenSSL/0.9.7e
Content-Type: text/html; charset=UTF-8


O código 200 OK siguinifica que os documentos pedidos foram encontrados no diretório e serão enviados. Existe diversos outros códigos
desse tipo que serão estudados mais afrente aqui no blog. Na segunda linha está a data da resposta, e na terceira ele se apresenta.
A quarta linha informa o tipo de documento que vão ser enviados e o charset deles.

Caso queira se aprofundar no estudo do HTTP, e ver essas conversas entre o user-agent e o servidor web ao vivo, use a extensão
para o firefox Live HTTP Headers. No próximos artigo, um pouco mais sobre os códigos de resposta 404.

Referencias:

2 comentários:

Carol disse...

Olá ^^

Adorei teu blog O layout tah incrivel ^^ Beijo ^^



===>
Obrigada por ter comentado no meu blog ^^
(Eu não sei onde tem o filme pra baixar)

Guido disse...

@Carol

Olá,

Obrigado pela resposta, aquele filme era pra uma colega minha que gosta desse ator e queria esse filme, não achei em lugar nenhum. Ma obrigado.

@HTTP

Mais links sobre HTTP:
http://pt.wikipedia.org/wiki/HTTP
http://www.google.com/support/webmasters/bin/answer.py?answer=40132
http://www.obasicodaweb.com/http-codigos-de-resposta-mais-comuns-e-seus-significados
http://www.obasicodaweb.com/http-metodos-requisicao