Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
aletres

Não atualiza a página mesmo usando no-cache - O que há de errado?

Recommended Posts

Bom dia.

Meu cabeçalho está da seguinte maneira:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>TITULO</title>
<meta http-equiv="cache-control" content="no-store, no-cache, must-revalidate, Post-Check=0, Pre-Check=0">
<meta http-equiv="expires" content="0">
<meta http-equiv="pragma" content="no-cache">

Já testei diversos scripts parecido com este mas dá o mesmo problema: o navegador pega as informações do cache.

Detalhes:

Basicamente, quando eu clico: uma vez atualiza e outra não. As vezes tenho que clicar mais de uma vez para poder atualizar.

Falei com a Locaweb e me informaram que o cache deles (php e html) é de 1 minuto. Fiz o testes e procede: Se eu clicar no link depois de 1 minuto a página atualiza sempre.

Como é possível eu declarar o no-cache no HEAD e não funcionar? :eek:

Um abraço! Valeu!

Alexandre

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, passei pelo mesmo problema... Seguinte, não tem cabeçalho que dê jeito, porque o cache fica no server, não no navegador. A locaweb inventou isso tem um tempinho de proxy http.

Dá uma olhada aqui: http://wiki.locaweb.com.br/pt-br/Proxy_HTTP

Eu particularmente convenci o cliente a trocar a hospedagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • E pensar que a anos atrás eu gostava da Locaweb. No último ano foram só problemas. O pior é que liguei pra eles antes e informaram que o cache era de 1 minuto (mas não me falaram nada de cache html, eu imaginava só php).

    Nos meus testes descobri que ele guarda cache somente em páginas com mais de 3920 bytes.

    O que me entriga é: porque só acontece no IE e no FF funciona normalmente?

    Muito obrigado!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    O cache é para arquivos estáticos, .html e .css por exemplo. Se no seu caso está dando em arquivos .php está errado. Só tome cuidado, porque se um arquivo é php, mas importa estilo de um css, esse css é cacheado.

    No meu caso, só pra você ter ideia, o cache tava em 10 minutos, isso mesmo, 10!!! E eles insistindo que era 1 minuto... Hoje nem sei mais como está, mas o certo da tecnologia era ser imperceptível. Tem meses que eles dizem estar trabalhando pra melhorar esse tempo, mas se você ainda enfrente esse problema, creio que eles não tiveram sucesso.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Para algumas extensões continua realmente para 10 minutos: http://wiki.locaweb.com.br/pt-br/Proxy_HTTP

    Pelo o que conversei, arquivos PHP tem 1 minuto de cache:

    Ronald Lopes 14:25:44 Olá Alexandre, em que posso ajudar?

    Alexandre 14:25:50 Boa tarde.

    Alexandre 14:26:06 Falei com vocês outro dia mas o assunto ficou meio vago...

    Alexandre 14:27:31 Há diversas alterações em nosso banco de dados, porém quando o usuário altera alguma informação a página quando acessada novamente mostra a informação antiga.

    Alexandre 14:29:43 A Locaweb configurou o proxy para 1 minuto, correto?

    Ronald Lopes 14:29:58 A Locaweb está implementando em seus servidores uma nova tecnologia de Proxy HTTP.

    O Proxy HTTP trabalha em conjunto com o servidor Apache, guardando cache de páginas estáticas como por exemplo: .html .css para as requisições HTTP aumentando assim a performance de seu servidor Web em até 100 vezes dando menor tempo de resposta para suas requisições comparado com um servidor Web apenas utilizando o Apache.

    Alexandre 14:30:02 Digo, o cache?

    Ronald Lopes 14:30:08 Isso

    Ronald Lopes 14:30:18 Devido ao Proxy HTTP

    Ronald Lopes 14:30:50 Imagens podem levar até 10 minutos

    Alexandre 14:30:54 Sim, porém estou tendo problemas com minhas páginas PHP.

    Alexandre 14:31:50 Fiz diversos testes com página em extensão PHP e cheguei a conclusão que:

    Alexandre 14:32:16 Só depois de 1 minuto é que a página é atualizada com as novas informações.

    Ronald Lopes 14:33:03 Correto, pois o mesmo esta configurado para atualizar a cada minuto

    Alexandre 14:33:34 Como é possível criar um sistema na Locaweb e ter as informações atualizadas em tempo real?

    Ronald Lopes 14:37:11 Isso é possível sómente em um servidor dedicado ou cloud server

    Alexandre 14:37:51 E como é feito a transferência de um server para outro?

    Alexandre 14:39:03 Assinando um novo plano, vocês transferem o banco e os arquivos?

    Ronald Lopes 14:40:19 Você contrata um servidor dedicado e após o mesmo estar ativo, você transfere os arquivos

    Alexandre 14:40:33 ok, obrigado.

    Minha dúvida é: como o no-cache da página é ignorada pelo browser?

    <meta http-equiv="cache-control" content="no-store, no-cache, must-revalidate, Post-Check=0, Pre-Check=0">

    <meta http-equiv="expires" content="0">

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

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Essas metas não vão influenciar no PHP... O proxy http está lá na origem de tudo, o apache, o qual você não tem acesso.

    De uma forma ou de outra eu acho péssimo isso. Ao menos, enquanto estamos em desenvolvimento, poderia haver a opção de setar sim ou não, mas...

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • A Locaweb não ajudou muito.

    Acabei descobrindo no site da Microsoft! (Nunca imaginei que a Ajuda da Microsoft funcionasse mesmo)

    http://support.microsoft.com/kb/222064/

    Então fiz o seguinte:

    Além de incluir o código no cabeçalho:

    <HEAD>
    <meta http-equiv="cache-control" content="no-store, no-cache, must-revalidate, Post-Check=0, Pre-Check=0">
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Expires" CONTENT="-1">
    </HEAD>

    Copiei e colei o mesmo bloco no final da página, antes do </HTML>.

    Agora no IE funciona perfeitamente.

    Valeu galera!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Nem entendi... se o proxy http é quem armazena o cache (não o navegador), como pode uma metatag arrumar o problema???

    Bem, o importante é que resolveu. Nem discute rsrsrs

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Nem um nem outro, a locaweb usa o Varnish, ou seja, impossível, limpar o cache com header php, htaccess ou meta tags, pois quem controla o cache é o proxy do http.

    Tem duas formas de você visualizar as alterações em tempo real:

    Opção 1: Naquela página fornecida pela Hospedagem https://usuariodeftp.websiteseguro.com
    Opção 2: Passando um token randômico na string da url como: htttp://www.meusite.com.br/foo/baar/1k3h5p3y/lista.html

     

    A opção 2 engana o Varnish fazendo ele acreditar que é uma url não cacheada, não recomendo isso. Mas dependendo da situação pode ser a unica solução.

    Se alguém descobrir uma terceira opção compartilhe, pois o cache da locaweb é um trolador quando o assunto é atualizar conteúdo em tempo real. 

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×