/ / Completamente desautorizar o cache do navegador - php, cache, cabeçalho

Completamente desautorizar o cache do navegador - php, cache, cabeçalho

Quero impedir que determinados arquivos sejam armazenados em cache por um navegador (por motivos de direitos autorais). Eu sei que você pode mudar os cabeçalhos usando PHP:

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past

Isso é bom quanto parece? Alguém pode pensar em camadas adicionais de segurança?

Respostas:

1 para resposta № 1

adicionando um timestamp na URL do recurso:

http://example.com/img.jpg?t=12234234 //append this in the server side

isso engana o navegador e servidor para pensar queé um novo recurso toda vez. apenas certifique-se que o valor é diferente toda vez. isso se aplica a qualquer recurso (alguém me corrija se eu estiver errado) como html simples, imagens etc.

Querystring aleatório para evitar o cache do IE

No entanto, o recurso ainda é armazenado nocache, independentemente de ter expirado. Tudo o que o navegador faz quando um recurso expira é esperar até que o usuário verifique o site novamente, faça um novo download do recurso e sobrescreva o existente no cache. Até que o usuário faça isso, ele não exclui os do cache.


Outra maneira de impedir o armazenamento em cache é usar o SSL emsua conexão. Por padrão, os navegadores não armazenam em cache SSL "ed sites - uma das principais razões, além de sobrecarga adicional para descriptografia, porque SSL em todo o lugar é evitado. No entanto, ainda alguns navegadores permitem cache SSL (tanto quanto eu sei, O Firefox faz) E ainda não muda o fato de que o recurso é enviado para o navegador do usuário - que pode ser interceptado ou visto em um depurador.


Todos os métodos acima podem impedir o cache, masNÃO impedirá que alguém roube suas imagens. A ideia da internet é acessar recursos de outro computador. Com isso dito, o usuário tem acesso a esses recursos. Tudo o que chega ao navegador está sujeito à vontade do usuário. Ele pode olhar para ele, olhar para a fonte, interceptá-lo na chegada, visualizado usando um depurador qualquer.

Qualquer coisa que você coloque em uma página da web na internet écomo entregar mais de um milhão de dólares a céu aberto - você não pode impedir que ladrões assistam, você pode não saber se a pessoa com quem está lidando também é um ladrão.


A única maneira infalível de evitar que suas imagens sejam de outra pessoa é colocar uma grande marca d'água nela!