Por que os formatos PNG e TIFF são tratados diferentemente de JPG e GIF por um servidor da web?

3
  • Eu observei que meu navegador da web mantinha o download de imagens PNG e TIFF, enquanto exibia JPG e GIF quando eu clicava em um link para essa imagem. Ex. http://somesite.com/image.<format>

  • Em uma inspeção mais detalhada dos cabeçalhos de resposta HTTP, observei que a diferença nos cabeçalhos Content-Disposition e Content-Type estava causando esse comportamento.

Alguém sabe por que eles são tratados de forma diferente?

PNG:

HTTP/1.1 200 OK
Date: Fri, 16 Jan 2015 01:33:05 GMT
Server: Apache/2.2.21 (CentOS)
Content-Disposition: attachment;filename*=UTF-8''PNG.png
Content-Type: application/octet-stream

JPG:

HTTP/1.1 200 OK
Date: Fri, 16 Jan 2015 01:34:43 GMT
Server: Apache/2.2.21 (CentOS)
Content-Disposition: inline;filename*=UTF-8''JPG.jpg
Content-Type: image/jpeg

GIF:

HTTP/1.1 200 OK
Date: Fri, 16 Jan 2015 01:31:28 GMT
Server: Apache/2.2.21 (CentOS)
Content-Disposition: inline;filename="GIF.gif"
Content-Type: image/gif
    
por Kent Pawar 16.01.2015 / 05:19

1 resposta

3

O servidor da web que está veiculando os arquivos não está configurado corretamente para veicular esses tipos de imagem. O tipo de conteúdo genérico e "desconhecido" é application/octet-stream . O navegador usa o cabeçalho Content-Type para decidir como lidar com o arquivo e, como ele não tem nada para lidar com isso, ele apenas faz o download do arquivo.

A maioria das instalações do Apache tem um arquivo mime.types em sua configuração que manipula a extensão do arquivo para o mapeamento de tipo de conteúdo.

O servidor também está definindo o cabeçalho Content-Disposition como attachment , o que também fazer com que o navegador baixe o arquivo em vez de exibi-lo em linha.

    
por 16.01.2015 / 09:55