18
Protocolo HTTP Servidores de Páginas Redes de computadores II Prof. Diovani Milhorim

Protocolo HTTP Servidores de Páginas

  • Upload
    howe

  • View
    31

  • Download
    1

Embed Size (px)

DESCRIPTION

Protocolo HTTP Servidores de Páginas. Redes de computadores II Prof. Diovani Milhorim. A Web Wide Word (www). Páginas Web (www) : Consiste de objetos endereçados por uma URL. ex: www.facthus.edu.br - PowerPoint PPT Presentation

Citation preview

Page 1: Protocolo HTTP Servidores de Páginas

Protocolo HTTPServidores de Páginas

Redes de computadores II

Prof. Diovani Milhorim

Page 2: Protocolo HTTP Servidores de Páginas

A Web Wide Word (www)

Páginas Web (www) : Consiste de objetos endereçados por uma URL.

ex: www.facthus.edu.br

A maioria das páginas web consistem de um documento HTML que referencia vários objetos tais como: imagens, animações, sons, etc...

Page 3: Protocolo HTTP Servidores de Páginas

A Web Wide Word (www)

A URL tem duas partes: Nome do hospedeiros e nome do caminho.

Ex. www.voile.com.br/diovani/redes1

hospedeiro: www.voile.com.br

Caminho : /diovani/redes1

Page 4: Protocolo HTTP Servidores de Páginas

A Web Wide Word (www)

Agente de usuário são chamados de Browsers ou navegador.ex: internet explorer, netscape, opera, firefox.

Servidores são chamados de “servidores de páginas” ou “servidores www”.ex: Apache

Microsoft Internet information service (IIS)

Page 5: Protocolo HTTP Servidores de Páginas

O protocolo Http

HTTP : hyper text transfer protocol. Protocolo de camada de aplicação. Modelo cliente/servidor : browser são clientes

que pedem objetos ao servidor www. Duas versões do protocolo:

http 1.0 (rfc 1945)

http 1.1 (rfc 2048)

Page 6: Protocolo HTTP Servidores de Páginas

O protocolo Http

HTTP : Utiliza o tcp como protocolo de transporte

Cliente utiliza conexão via socket no servidor. Porta padrão 80.

O protocolo http é sem estado (stateless).- Servidor não mantém histórico de outras conexões do cliente.- Servidores que mantêm estado são complexos.

Page 7: Protocolo HTTP Servidores de Páginas

O protocolo Http

Exemplo de conexão

1. Cliente pede conexão em servidor http (processo) na porta 80 do servidor 2.Servidor aceita a conexão e

avisa o cliente

3. Cliente envia mensagem de pedido de http (que contém a URL) através de socket de conexão tcp

4. Servidor recebe mensagem pedido e formula a mensagem de resposta contendo os objetos solicitados. Envia mensagem via socket.

tempo

Page 8: Protocolo HTTP Servidores de Páginas

O protocolo Http

Exemplo de conexão (continuação)5.Servidor encerra a conexão

6.Cliente http recebe mensagem do servidor, contendo arquivo html. Visualiza o arquivo html. Verifica que o arquivo Html referencia outros 10 objetos.

7. Passos de 1 a 5 repetidos para cada objeto

tempo

Page 9: Protocolo HTTP Servidores de Páginas

Protocolo http.

Conexões persistentes e conexões não persistentes.

Não persistente

•http 1.0

•Servidor analisa pedido, responde e encerra a conexão tcp.

•Para cada objeto e para a página Html deverá ser aberta uma conexão tcp

•Transferência de cada objeto sofre de partida lenta do tcp.

•2 RTTs para cada objeto. (round trip time)

Persistentes

•http 1.1

•Na mesma conexão tcp o servidor analisa o pedido, responde e analisa novo pedido.

•Cliente envia o pedido para todos os objetos referenciados assim que recebe o Html básico.

•Menos RTTs e menos partidas lentas.

Page 10: Protocolo HTTP Servidores de Páginas

Protocolo Http

Formato de mensagem http: Formato geral Dois tipos de mensagens: Pedido, resposta. Mensagem de pedido http (formato ASCII)

Page 11: Protocolo HTTP Servidores de Páginas

Protocolo Http

Formato de mensagem http: Método GET: É o método mais comum: solicita algum recurso

como um arquivo ou um script CGI (qualquer dado que estiver identificado pelo URI) por meio do protocolo HTTP. O método GET é reconhecido por todos os servidores.

HEAD: É o mesmo que GET, mas sem que o recurso seja retornado. É usado para obter meta-informações por meio do cabeçalho da resposta, sem ter que recuperar todo o conteúdo.

POST: Envia dados para serem processados (por exemplo, dados de um formulário HTML) para o recurso especificado. Os dados são incluídos no corpo do comando.

Page 12: Protocolo HTTP Servidores de Páginas

Protocolo Http

Exemplo de pedido:

GET /index.html HTTP/1.1 Host:

User-agent: Mozilla/4.0

Accept: text/html, image/gif, image/jpeg

Accept-language: fr

Page 13: Protocolo HTTP Servidores de Páginas

Protocolo Http

Exemplo de resposta:

HTTP/1.1 200 OKDate: Mon, 23 May 2005 22:38:34 GMTServer: Apache/1.3.27 (Unix) (RedHat/Linux)Last-Modified: Wed, 08 Jan 2003 23:11:55 GMTAccept-Ranges: bytesContent-Length: 438Connection: closeContent-Type: text/html; charset=UTF-8

Dados dados dados dados dados...

Page 14: Protocolo HTTP Servidores de Páginas

Protocolo Http

Exemplo de pedido com POST

POST /index.html HTTP/1.0

Accept: text/html If-modified-since: Sat, 29 Oct 1999 19:43:31 GMT

Content-Type: application/x-www-form-urlencoded Content-Length: 30 Nome=NamePessoa&Idade=99&Curso=Computacao

Page 15: Protocolo HTTP Servidores de Páginas

Protocolo Http

Mensagens de erro

1xx: Informational (Informação) – utilizada para enviar informações para o cliente de que sua requisição foi recebida e está sendo processada;

2xx: Success (Sucesso) – indica que a requisição do cliente foi bem sucedida;

3xx: Redirection (Redirecionamento) – informa a ação adicional que deve ser tomada para completar a requisição;

4xx: Client Error (Erro no cliente) – avisa que o cliente fez uma requisição que não pode ser atendida;

5xx: Server Error (Erro no servidor) – ocorreu um erro no servidor ao cumprir uma requisição válida.

Page 16: Protocolo HTTP Servidores de Páginas

Protocolo Http

Mensagens de erro

200 : OK 301: Moved permanently 400: Bad Request 404: Not found 505: Http version not supported.

Page 17: Protocolo HTTP Servidores de Páginas

Protocolo Http

Exercício

No prompt de comando do DOS digite

Telnet www.xxx.com.br 80 GET index.html HTTP/1.1 <enter> duas vezes. Analise a resposta.

Page 18: Protocolo HTTP Servidores de Páginas

Protocolo Http

Exercício

Configure e coloque em operação o servidor apache de sua máquina no sistema linux.

Tente fazer seu servidor operar nas portas 80 e 81.

Crie uma página inicial personalizada para seu servidor de paginas com o seu nome.