O erro HTTP 304 é um dos muitos códigos de status que indicam um problema de comunicação entre o navegador de um usuário e o servidor de um site. Se você ou seus usuários encontrarem esse erro em seu site, ele pode bloquear totalmente o acesso ao seu conteúdo.

Este erro pode ser do lado do servidor ou do lado do cliente, portanto, descobrir a fonte pode exigir um pouco de trabalho. Felizmente, existem várias técnicas infalíveis para a solução de problemas.

Neste post, vamos discutir os códigos de status HTTP e explicar o que é o erro HTTP 304. Em seguida, vamos guiá-lo através de seis métodos que você (ou seus visitantes) pode usar para corrigi-lo.

Vamos começar!

Uma Introdução aos Códigos de Status HTTP

Para entender o HTTP 304, ele ajuda a entender primeiro os códigos de status. Simplificando, toda vez que você faz uma solicitação ao seu navegador – como ao acessar um determinado site – um código de status HTTP é enviado entre o seu navegador e o servidor para troca de informações.

Existem mais de 40 códigos de status diferentes que podem estar envolvidos nessa comunicação. No entanto, há apenas um punhado de códigos que você provavelmente irá encontrar diretamente. Quando você encontra um código de status, isso geralmente significa que algo deu errado.

Os códigos de status HTTP enquadram-se em uma das cinco categorias, numeradas entre os 100s e os 500s. Cada série indica um tipo diferente de problema. Por exemplo, códigos de erro que se enquadram nos 400s, como o erro “404 Not Found“, tipicamente significam que houve um problema com a solicitação e o site ou página em questão era inalcançável.

Por outro lado, códigos na década de 300 – como o código de erro HTTP 304 que vamos focar neste post – são códigos de redirecionamento. Eles deixam claro que as informações solicitadas foram substituídas temporária ou permanentemente por outro recurso.

Quando você encontra um desses erros, significa que outras ações devem ser tomadas.

O Erro HTTP 304

O HTTP 304, também conhecido como “304 Não Modificado”, é um código que comunica ao seu navegador que: “O recurso solicitado não foi modificado desde a última vez que você o acessou”.

Essencialmente, seu (ou de seu visitante) navegador está sendo informado pelo servidor que os recursos armazenados (em cache) no navegador não foram modificados desde a última vez que você visitou aquela página.

Por sua vez, seu navegador recupera do cache uma versão salva da página da web. O objetivo disso é melhorar a velocidade e entrega da página, evitando que seu navegador tenha que baixar repetidamente as mesmas informações.

Entendendo as solicitações HTTP 304

Quando o seu navegador armazena um recurso no cache, ele mantém o que é chamado de ‘Last-Modified header’ que foi enviado do servidor. Se um navegador recebe uma solicitação para uma página web, ele tem uma cópia salva, mas não sabe se tem a última versão, ele envia uma solicitação de ‘validação condicional’ para o servidor.

O navegador comunica ao servidor a data e hora da ‘Última Modificação’ para a cópia do recurso que possui, através do cabeçalho ‘If-Modified-Since‘ ou ‘If-None-Match‘. O servidor inspeciona esses cabeçalhos e também olha para o valor ETag. Este último é um identificador único usado para especificar a versão de um determinado recurso.

Se os valores desses arquivos forem os mesmos, o servidor envia o cabeçalho de resposta HTTP 304 Não Modificado e o navegador utiliza a cópia em cache do recurso.

Se a cópia do navegador estiver desatualizada, o que significa que o arquivo foi modificado desde a última solicitação, ele envia um código HTTP 200 e uma nova cópia é utilizada.

Infelizmente, existem alguns problemas que podem causar uma resposta de erro HTTP 304 quando não é suposto que isso ocorra. As causas mais comuns incluem:

Este erro pode ser devido a um problema do lado do servidor ou do lado do cliente, por isso pode ser necessário algum tipo de solução de problemas para diagnosticar e resolver o problema.

O erro HTTP 304 pode bloquear o acesso a todo o seu conteúdo, o que significa que entender como corrigi-lo é crucial 🚨 Este guia tem 6 métodos para colocar as coisas de volta em funcionamento o quanto antes ✨Click to Tweet

Como corrigir o erro HTTP 304 (6 Potenciais Métodos)

Os métodos que você pode usar para resolver um erro do HTTP 304 variam de simples a bastante técnicos. Os mecanismos de busca são responsáveis pela indexação e caching dos sites, por isso esta questão normalmente pode ser rastreada até o navegador que está sendo utilizado para acessar o site.

É claro que não há muito que você possa fazer para consertar os navegadores das pessoas que estão tentando acessar o seu site.

Entretanto, entender o que pode estar causando o problema para os visitantes pode ser útil, seja ao tentar encontrar uma solução do seu lado ou ao ajudá-los diretamente.

Com isso em mente, vamos dar uma olhada em seis métodos que você pode usar para tentar corrigir um erro do HTTP 304!

1. Limpar os dados do Cache do Navegador

Primeiro, limpar os dados do seu navegador para limpar o cache pode ajudar a acessar a URL desejada. Isso inclui excluir todos os dados de navegação, cookies e informações do cache.

As instruções para executar este processo variam de acordo com o navegador que você está usando. Se você não tem certeza de como fazê-lo em seu dispositivo, sinta-se à vontade para consultar nosso guia sobre como limpar o cache de todos os principais navegadores.

2. Executar uma varredura de malwares

Navegadores corrompidos que foram infectados com um vírus ou malware podem ser outro culpado. Portanto, é uma boa idéia executar uma varredura de malware no seu sistema. Fazer isso pode ajudar a identificar e remover qualquer problema que possa estar interrompendo ou interferindo com a solicitação do cabeçalho, incluindo extensões problemáticas.

Se você estiver usando a versão Windows do Chrome, você pode executar o Malware Scanner e a Ferramenta de Limpeza que vem embutida.

Para fazer isso, primeiro certifique-se de estar executando a última versão do Chrome, abrindo uma nova aba e clicando no ícone do menu, seguido por Sobre o Chrome:

A página Sobre do navegador Google Chrome

A página Sobre do navegador Google Chrome

Se seu navegador não estiver atualizado para a versão atual, você pode resolver isso no mesmo local. Então, abra uma nova aba Chrome e digite “chrome://settings/cleanup” na barra de URLs.

Pressione Enter, e ao lado de Encontrar e remover software nocivo clique no botão Encontrar:

A ferramenta de limpeza no Google Chrome

A ferramenta de limpeza no Google Chrome

O scanner começará a funcionar e, em seguida, reportará os resultados.

Infelizmente, alguns outros navegadores como Firefox e Edge, assim como os sistemas operacionais MacOS e Linux, não vêm com suas próprias versões desta ferramenta integrada. Ao invés disso, você terá que executar uma verificação de malware usando o software antivírus em seu computador.

3. Desabilite as extensões do seu Navegador

As extensões do seu navegador também podem ser infectadas e interferir nas solicitações e na comunicação com o servidor. É por isso que você também pode querer desativá-las. Você pode fazer isso abrindo o menu do Chrome e indo para Configurações > Extensões:

O item do menu Extensões nas configurações do Chrome

O item do menu Extensões nas configurações do Chrome

Na página Extensões, você pode desativar cada uma delas clicando no botão de comutação correspondente.

Você também pode excluir extensões não utilizadas ou desatualizadas através do botão Remover:

A página Extensões no Google Chrome

A página Extensões no Google Chrome

Novamente, este processo irá variar ligeiramente dependendo do seu navegador. O objetivo é remover ou desativar cada extensão manualmente e depois verificar se isso resolve o problema do HTTP 304.

Então, você pode tentar virá-los um a um.

4. Lavar o DNS e Reinicializar o TCP/IP

Se o problema não tiver sido resolvido neste ponto, pode haver um problema com as configurações do DNS. Por exemplo, usar um endereço IP desatualizado pode causar um erro no HTTP 304.

Portanto, outra abordagem para tentar é descarregar o DNS e reiniciar o TCP/IP.

Com o Chrome, você pode lavar o DNS do navegador digitando “chrome://net-internals/#dns” em uma nova aba.

Pressione Enter, e depois clique no botão Clear host cache:

A página de configurações para a descarga do cache DNS no Chrome

A página de configurações para a descarga do cache DNS no Chrome

Você também pode limpar o DNS e reiniciar o TCP/IP no seu sistema operacional. Se você precisar de orientações detalhadas, você pode consultar nosso tutorial sobre Como Lavar o Cache DNS (Windows, Mac, Chrome).

5. Tente usar o DNS Público do Google

Outra causa potencial do erro do HTTP 304 é um endereço DNS incorreto. Portanto, vale a pena usar o DNS Público do Google para ver se isso resolve o problema.

No Windows, você pode fazer isso pressionando as teclas Win + R. Na janela Executar que aparece, digite “ncpa.cpl” na caixa de comando, e então pressione Ok.

Cansado dos problemas do WordPress e de um host lento? Fornecemos suporte de classe mundial de especialistas em WordPress disponíveis 24/7, e servidores de alta velocidade. Confira nossos planos

Na janela Conexões de Rede que se abre a seguir, localize a conexão de rede que você está usando e clique com o botão direito do mouse sobre ela. A seguir, selecione Propriedades:

A página de configurações de Conexões de Rede no Windows

A página de configurações de Conexões de Rede no Windows

A partir daí, clique duas vezes na versão 4 do Protocolo Internet:

As configurações de propriedades Wi-Fi no Windows

As configurações de propriedades Wi-Fi no Windows

Selecione a opção “Use the following DNS server address”, então digite o valor “8.8.8.8” em Preferred e “8.8.4.4” em Alternate:

Os campos para entrada de endereços de servidores DNS preferidos e alternativos no Windows

Os campos para entrada de endereços de servidores DNS preferidos e alternativos no Windows

Quando terminar, clique em Ok. Depois reinicie seu sistema, e tente acessar o site novamente.

Para alterar as configurações do seu servidor DNS usando macOS, você iria para Apple > Preferências do Sistema > Rede:

Preferências do Sistema em macOS

Preferências do Sistema em macOS

Na janela que se abre, selecione sua conexão, depois clique em Avançado seguido da guia DNS:

O painel DNS da Rede em macOS

O painel DNS da Rede em macOS

Clique no ícone + ao lado dos endereços IPv4 ou IPv6, para substituir os endereços existentes pelos IPs públicos do Google.

Para mais instruções ou para orientação sobre o uso do DNS Público do Google em um sistema operacional Linux ou outro sistema operacional, confira próprio guia DNS do Google.

6. Verifique se os arquivos de configuração do seu servidor contêm instruções incorretas de redirecionamento

HTTP 304 Erros não modificados podem ocorrer devido a problemas tanto no servidor quanto no cliente. Se nenhum dos métodos que cobrimos até agora corrigiu o problema, os arquivos de configuração do seu servidor podem estar em falha. Por exemplo, é possível que haja instruções incorretas de redirecionamento presentes.

O processo de verificação dos arquivos de configuração do seu servidor depende se você está usando Nginx ou Apache.

Na Kinsta, utilizamos o servidor web Nginx. Então se você é um usuário Kinsta, você não terá acesso ao arquivo .htaccess que os usuários do Apache fazem.

Entretanto, você ainda pode realizar funções similares. Por exemplo, após fazer login no MyKinsta, você pode verificar na seção Analytics > Response do painel para obter uma quebra dos códigos de resposta e redirecioná-los:

Código de resposta com quebra no MyKinsta

Código de resposta com quebra no MyKinsta

Você também pode verificar os logs de erros. Se você tiver uma pergunta específica ou solicitação sobre a edição dos arquivos de configuração, sua melhor aposta é entrar em contato com nossa equipe de suporte.

Se seu servidor está rodando no Apache, então você vai querer procurar pelo arquivo . htaccess no diretório raiz do seu site. Você pode fazer isso entrando no gerenciador de arquivos para sua conta de hospedagem, e navegando para a pasta public_html.

Uma vez aberto esse arquivo, procure pela seção mod_cache do módulo. Deve ser algo parecido com isto:

LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
    LoadModule cache_disk_module modules/mod_cache_disk.so
    <IfModule mod_cache_disk.c>
        CacheRoot "c:/cacheroot"
        CacheEnable disk  "/"
        CacheDirLevels 5
        CacheDirLength 3
    </IfModule>

    # When acting as a proxy, don't cache the list of security updates
    CacheDisable "http://security.update.server/update-list/"
</IfModule>

Não recomendamos a exclusão de nada, pois isso pode causar danos graves. Ao invés disso, você pode tentar comentar temporariamente a seção de cache adicionando um símbolo “#” no início de cada linha.

Após salvar suas alterações, verifique se isso resolveu o problema do HTTP 304.

Don't let an HTTP 304 error stand in the way of your site ❌ Encontre todos os truques de solução de problemas que você precisa neste guia detalhadoClick to Tweet

Resumo

Os códigos de redirecionamento HTTP 304 são usados para melhorar a velocidade e o desempenho da página. Infelizmente, quando um servidor ou browser não está configurado corretamente, a comunicação entre os dois pode ser interrompida e resultar em um erro do HTTP 304.

Existem seis métodos que você pode usar para corrigir o erro do HTTP 304, especificamente:

  1. Limpar os dados do cache do seu navegador.
  2. Executando uma varredura de malware.
  3. Desabilitando as extensões do seu navegador.
  4. Lavagem do DNS e reinicialização do TCI/IP.
  5. Experimentando o DNS Público do Google.
  6. Verificação dos arquivos de configuração do seu servidor para instruções incorretas de redirecionamento.

Se você gostou deste tutorial, então você vai adorar o nosso suporte. Todos os planos de hospedagem do Kinsta incluem suporte 24/7 de nossos veteranos desenvolvedores e engenheiros do WordPress. Converse com a mesma equipe que apoia nossos clientes da Fortune 500. Confira nossos planos