Skip to main content
Validação HTML

Recurso HTTP não recuperável. O status HTTP do servidor remoto foi: 403.

Sobre este problema HTML

O Validador HTML do W3C não apenas analisa a sua marcação—também tenta recuperar recursos externos referenciados em elementos como <link>, <script>, <img> e <iframe>. Quando um servidor retorna um código de status 403, está a dizer ao validador “você não está autorizado a aceder a este recurso.” O validador então reporta isso como uma mensagem informativa porque não consegue validar completamente o conteúdo referenciado.

Causas comuns

Várias configurações do lado do servidor podem desencadear este problema:

  • Proteção contra hotlinking — Muitos servidores e CDNs bloqueiam pedidos que não se originam de um domínio aprovado. Como os pedidos do validador vêm de validator.w3.org, são rejeitados.
  • Restrições baseadas em IP ou firewalls — O servidor remoto pode restringir o acesso a intervalos de IP específicos, bloqueando os servidores do validador.
  • Filtragem de User-Agent — Alguns servidores rejeitam pedidos de bots ou User-Agents que não sejam navegadores, o que inclui o validador.
  • Requisitos de autenticação — O recurso pode estar protegido por um muro de login ou requerer chaves API ou tokens.
  • Restrições geográficas — O servidor pode usar geo-bloqueio que impede o acesso a partir da localização do validador.

Por que isso importa

Embora isto seja tipicamente um aviso informativo em vez de um erro HTML rígido, tem implicações práticas:

  • Validação incompleta — O validador não consegue verificar o recurso referenciado para erros. Por exemplo, se um ficheiro CSS retorna 403, o validador não consegue verificar a folha de estilos para problemas que possam afetar a sua página.
  • Potenciais referências quebradas — Um 403 pode indicar que a URL do recurso está incorreta ou desatualizada, significando que utilizadores reais também podem experienciar problemas dependendo da sua configuração de navegador ou rede.
  • Preocupações de acessibilidade e fiabilidade — Se o recurso for intermitentemente bloqueado, alguns utilizadores podem não receber folhas de estilos ou scripts críticos, levando a uma experiência degradada.

Como corrigir

  1. Verifique se a URL está correta — Verifique duas vezes por erros tipográficos ou caminhos desatualizados.
  2. Hospede recursos no seu próprio servidor — Descarregue o recurso e sirva-o localmente ou a partir de um CDN que você controla.
  3. Use um CDN que permite acesso aberto — CDNs abertos populares como cdnjs, jsDelivr ou unpkg são desenhados para permitir acesso irrestrito.
  4. Configure o servidor remoto — Se você controla o servidor que hospeda o recurso, adicione o User-Agent do validador à lista de permitidos ou permita pedidos de validator.w3.org.
  5. Remova referências desnecessárias — Se o recurso não é realmente necessário, remova o elemento inteiramente.

Exemplos

Recurso bloqueado pelo servidor remoto

Isto referencia uma folha de estilos num servidor que retorna 403 ao validador:

<link rel="stylesheet" href="https://restricted-server.example.com/styles/main.css">

Corrigido: hospede o recurso localmente

Descarregue a folha de estilos e sirva-a do seu próprio domínio:

<link rel="stylesheet" href="/css/main.css">

Corrigido: use um CDN publicamente acessível

Mude para um CDN aberto bem conhecido que não bloqueia pedidos externos:

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css">

Script bloqueado por proteção contra hotlinking

<script src="https://protected-site.example.com/js/library.min.js"></script>

Corrigido: use uma fonte pública fiável

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"></script>

Imagem bloqueada por restrições de acesso

<img src="https://private-cdn.example.com/photos/banner.jpg" alt="Welcome banner">

Corrigido: hospede a imagem você mesmo

<img src="/images/banner.jpg" alt="Welcome banner">

Tenha em mente que este aviso apenas aparece durante a validação—não significa necessariamente que os seus utilizadores finais estão a experienciar o mesmo erro 403. Os navegadores enviam cabeçalhos diferentes (incluindo cookies, referrers e strings de User-Agent) do que o validador, então o recurso pode carregar bem para os visitantes. No entanto, continua a ser uma boa prática garantir que os seus recursos referenciados são fiavelmente acessíveis e que a validação pode completar-se totalmente.

Encontre problemas como este automaticamente

O Rocket Validator analisa milhares de páginas em segundos, detetando problemas HTML em todo o seu site.

Ajude-nos a melhorar os nossos guias

Este guia foi útil?

Pronto para validar os seus sites?
Comece o seu teste gratuito hoje.