Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

juniormatrix

Desabilitar cache com meta tag

Recommended Posts

Olá

 

Pesquisei na net e achei esta meta tag:

 

<meta http-equiv="pragma" content="no-cache">

 

Pelo que percebi, ela evita que a pagina e seus elementos (imagens, códigos, etc) sejao armazenadas no computador.

 

Tenho um site que mostra imagens e aos poucos estou bloqueando o download delas. Comecei com um script que bloqueia o menu de contexto do mouse e agora pensei em desabilitar o cache da pagina, entre outras coisas. Não quero impedir 100% de copiar as imagens, quero apenas dificultar para usuários mais leigos.

 

Será que esse código aí funciona? É seguro e confiável usar ele?

 

Se alguem puder me ajudar, ficaria grato.

 

Valews!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<meta http-equiv="pragma" content="no-cache">

 

Pelo que percebi, ela evita que a pagina e seus elementos (imagens, códigos, etc) sejao armazenadas no computador.

 

Não, na verdade este código não só evita como faz com que o browser/navegador não guarde os dados e elementos da página em cache. Sabe quando você entra tão direto em um site que ele chega a carregar mais rápido quando você entra nas outras vezes? Isso é a cache, esse banco de dados que armazena dados e processos que você utiliza com frequencia.

 

Você pode testar a função Javascript abaixo para bloquear a seleção do conteúdo de seu site, por exemplo.

function bloquear(e){return false}
function desbloquear(){return true}
document.onselectstart=new Function ("return false")
if (window.sidebar){document.onmousedown=bloquear
document.onclick=desbloquear} 

 

E determine na tag BODY:

onselectstart='return false'

 

[]s,

Diéssica Gurskas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá

 

Esse código javascript para bloquear a seleção eu ja conhecia, mas fico grato pela atenção. Minha página é super leve, não havendo necessidade de cache. Quero mesmo é evitar que as imagens sejam gravadas em cache e saber se a meta tag em questão é segura e se ela funciona mesmo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

esquece isso.. impossível.

 

em algum momento as suas imagens serão puxadas para o computador do usuário.

Ficará na pasta temp/ dele. Não importando os seus esforços para "evitar cache".

 

Apenas com flash é que você teria isso "mais fechado"

Compartilhar este post


Link para o post
Compartilhar em outros sites
Quero mesmo é evitar que as imagens sejam gravadas em cache e saber se a meta tag em questão é segura e se ela funciona mesmo.

 

Ok. Eu particularmente, não bloquearia o conteúdo do meu site. Mas tudo bem.

 

Acho que isso não vai ajudar muito você, porque as imagens de qualquer jeito vão ser salvas.

 

Enfim, a meta tag funciona parcialmente. Mas para desabilitar cache, eu acho PHP, ASP e até Ajax muito mais efetivos.

 

Você pode desabilitar a cache com PHP utilizando a função header:

http://www.php.net/manual/pt_BR/function.header.php

 

Talvez eu tenha um código pronto que fiz aqui.

 

E para desabilitar com ASP:

<%
Response.addHeader "pragma", "no-cache"
Response.CacheControl = "Private"
Response.Expires = 0
%>

 

Ajax:

   response.setDateHeader("expires", 1);  
   response.setHeader("cache-control", "no-cache");  

esquece isso.. impossível.

 

Acho que você deve rever seus conceitos sobre "esquece isso.. impossível.".

 

[],

Diéssica Gurskas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi Diéssica, você mesma "concordou comigo":

Acho que isso não vai ajudar muito você, porque as imagens de qualquer jeito vão ser salvas.

Note, que não importa o qnto "desative o cache", as imagens serão baixadas, pois é assim que o protocolo http funciona.

 

Por isso que eu disse, que é "impossível" proteger as imagens como ele quer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Parcialmente possível? hehe

 

Segue o código PHP

  header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');  
  header('Last Modified: '. gmdate('D, d M Y H:i:s') .' GMT');  
  header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');  
  header('Pragma: no-cache');  
  header("Cache: no-cache");    
  header('Expires: 0');  

 

[]s,

Diéssica Gurskas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois é.. ai só depende do qnto ele quer enganar a si mesmo.. pois estando na web, tá livre.

 

 

O computador do visitante, vai ter q baixar as imagens em algum momento, senão seria impossível exibir.

Além disso, o cara pode tirar um Print Screen, da tela, editar e pronto.

 

E sem essas de proteger com javascript, tentando desabilitar o botão direito, o print.. pq js roda no cliente, e pode ser facilmente desabilitado, logo, qq proteção q se tente fazer com essa linguagem, vai por agua a baixo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, por isso nem uso. Quando a pessoa quer copiar ela arruma um jeito de copiar. Acho que essa coisa de Javascript que desabilita a seleção de texto é interessante para blogs pequenos.

Agora a questão da cache é um tanto quanto útil se você for se aprofundar usando linguagens mais efetivas como PHP, ASP, pois dependendo do código, a linguagem informa realmente o browser, "desabilitando" a cache, mesmo que parcialmente. Não acho impossível, pode ser útil pra ele se ele quiser proteger não só as imagens.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Inicialmente fico grato por todas as colaborações.

 

Essa questão de proteger imagem é um assunto antigo já. Realmente proteger 100% tb acho impossível, mas quero proteger daquele usuário mais leigo, que sabe apenas copiar a imagem com o uso do botão contrário, mas vai ter aquele visitante que sabe como ir até a pasta dos temporários da net, vai ter outro que conhece o "Salvar como" e por aí vai.

 

Estou pesquisando algo agora sobre o uso de Flash. Vou testar tb esses códigos enviados, claro. Assim q tiver novidades vou postar aqui.

 

grato por enquanto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desativa o cache com .htaccess, assim você pode também especificar quais arquivos ficam ou não em cache

<IfModule mod_expires.c>
ExpiresActive Off
 </IfModule>
 <IfModule mod_headers.c>
Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform"
 </IfModule>
</FilesMatch>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.