Como Validar URL: Guia Completo de Validação

Aprenda como validar URLs corretamente. Guia completo com estrutura, protocolos, regex e validador online gratuito.

Experimente a Ferramenta Agora

Use nossa ferramenta gratuita e obtenha resultados instantâneos

Validar URLs é essencial para garantir que links em formulários, aplicações e sistemas estejam corretos e funcionais. Uma URL válida segue padrões específicos de estrutura e formato.

Neste guia completo, você aprenderá como validar URLs, entenderá a estrutura de uma URL, conhecerá os protocolos, usará regex para validação e testará URLs com nossa ferramenta online.

O Que é Validação de URL

Validação de URL é o processo de verificar se uma string segue o formato correto de URL (Uniform Resource Locator) segundo os padrões RFC 3986.

Validação verifica estrutura, protocolo, domínio e formato. Não verifica se a URL existe ou está acessível (isso requer fazer requisição HTTP).

É importante validar URLs em formulários para evitar erros de digitação, links quebrados e problemas de segurança.

Estrutura de uma URL

URL completa: protocolo://subdomínio.domínio.tld:porta/caminho?query=valor#fragmento

Exemplo: https://www.exemplo.com.br:443/produtos/categoria?id=123&ordem=preco#detalhes

Protocolo: https. Subdomínio: www. Domínio: exemplo. TLD: com.br. Porta: 443. Caminho: /produtos/categoria. Query: ?id=123&ordem=preco. Fragmento: #detalhes.

  • Protocolo: http, https, ftp, etc.
  • Subdomínio: www, blog, api (opcional)
  • Domínio: nome do site
  • TLD: .com, .br, .org, etc.
  • Porta: :80, :443, :8080 (opcional)
  • Caminho: /pasta/arquivo (opcional)
  • Query string: ?param=valor (opcional)
  • Fragmento: #secao (opcional)

Protocolos Comuns

HTTP: protocolo padrão da web. Não criptografado. Porta padrão 80. Exemplo: http://exemplo.com

HTTPS: HTTP seguro com criptografia SSL/TLS. Porta padrão 443. Recomendado para todos os sites. Exemplo: https://exemplo.com

FTP: protocolo de transferência de arquivos. Porta padrão 21. Exemplo: ftp://ftp.exemplo.com

Outros: mailto: (email), tel: (telefone), file: (arquivo local), ws: (WebSocket), wss: (WebSocket seguro).

Validação Básica

Verificar protocolo: deve começar com http://, https:// ou outro protocolo válido.

Verificar domínio: deve ter pelo menos um ponto (exemplo.com) e caracteres válidos (letras, números, hífen).

Verificar caracteres: apenas caracteres permitidos em URLs (letras, números, -, _, ., ~, :, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, =, %).

  • Deve ter protocolo (http://, https://)
  • Deve ter domínio válido
  • Domínio deve ter TLD (.com, .br, etc.)
  • Caracteres especiais devem ser codificados
  • Não pode ter espaços
  • Formato geral: protocolo://domínio/caminho

Regex para Validação

Regex simples: ^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$

Essa regex valida URLs HTTP/HTTPS com domínio, subdomínio opcional, caminho, query string e fragmento.

Regex mais completa pode validar portas, IPv4, IPv6, mas fica muito complexa. Para validação robusta, use bibliotecas especializadas.

Validação em Diferentes Linguagens

JavaScript: usar URL API nativa. try { new URL(string); return true; } catch { return false; }

Python: usar urllib.parse. from urllib.parse import urlparse; result = urlparse(url); return all([result.scheme, result.netloc])

PHP: usar filter_var. filter_var($url, FILTER_VALIDATE_URL) !== false

Java: usar java.net.URL. try { new URL(urlString); return true; } catch (MalformedURLException e) { return false; }

  • JavaScript: new URL()
  • Python: urllib.parse.urlparse()
  • PHP: filter_var() com FILTER_VALIDATE_URL
  • Java: new URL()
  • Ruby: URI.parse()
  • C#: Uri.TryCreate()

URLs Relativas vs Absolutas

URL absoluta: contém protocolo e domínio completo. Exemplo: https://exemplo.com/pagina.html

URL relativa: não tem protocolo/domínio, é relativa à página atual. Exemplo: /pagina.html ou ../outra-pagina.html

Validação de URLs relativas é diferente. Geralmente aceita-se qualquer caminho que comece com / ou ../ ou seja apenas nome de arquivo.

Problemas Comuns

Espaços na URL: devem ser codificados como %20 ou +. Exemplo: "minha pagina.html" deve ser "minha%20pagina.html"

Caracteres especiais: acentos e símbolos devem ser codificados. Exemplo: "página" deve ser "p%C3%A1gina"

Protocolo faltando: "exemplo.com" não é URL válida. Deve ser "https://exemplo.com"

Barra final: "https://exemplo.com" e "https://exemplo.com/" são tecnicamente diferentes, mas geralmente tratadas como iguais.

Conclusão

Validar URLs corretamente garante que links em seu sistema funcionem e evita erros de segurança. Use validação no frontend e backend.

Valide URLs gratuitamente com nossa ferramenta online. Verifica estrutura, protocolo e formato instantaneamente.

Pronto para Começar?

Acesse nossa ferramenta gratuita e comece a usar agora mesmo