O que é uma URL?

Prévia grátis 5 min de leitura

O endereço da web

Toda vez que você clica em um link, digita um endereço no navegador ou submete um formulário: você está usando uma URL. É tão comum que a maioria das pessoas nunca pensa no que é.

Uma URL (Uniform Resource Locator) é o endereço que diz ao seu navegador onde encontrar um recurso específico na internet. Assim como um endereço de rua diz ao entregador para onde ir, uma URL diz ao navegador qual servidor contactar, o que pedir e como pedir.


URL vs URI vs URN

Você às vezes verá esses termos usados como sinônimos, mas eles têm significados distintos:

Termo Significa Propósito Exemplo
URI Uniform Resource Identifier Um identificador genérico para qualquer recurso Qualquer URL ou URN
URL Uniform Resource Locator Identifica um recurso E diz como localizá-lo https://example.com/page
URN Uniform Resource Name Identifica um recurso pelo nome, sem localização urn:isbn:0451450523

Pense assim:

  • Um URN é como o nome de uma pessoa: identifica ela, mas não diz onde está
  • Uma URL é como o endereço residencial: identifica E diz como encontrá-la
  • Uma URI é o termo guarda-chuva que abrange ambos

Na prática, quase tudo na web é uma URL. Quando alguém diz "URI" no desenvolvimento web, geralmente quer dizer URL.


Anatomia de uma URL

Uma URL é composta por vários componentes, cada um com um propósito específico:

https://www.example.com:443/catalog/courses?level=intern&sort=name#section-2
└─┬──┘  └──────┬──────┘└┬┘└──────┬────────┘└──────────┬──────────┘└───┬────┘
scheme       host     port     path            query string       fragment

Vamos decompor isso:

Componente Exemplo Propósito
Scheme https O protocolo a ser usado
Host www.example.com Qual servidor contactar
Port 443 Qual porta no servidor
Path /catalog/courses Qual recurso solicitar
Query String ?level=intern&sort=name Parâmetros adicionais
Fragment #section-2 Uma seção específica dentro da página

Nem todos os componentes são obrigatórios. Um endereço web pode ser só um scheme e um host:

https://example.com

URLs absolutas vs relativas

URLs vêm em duas formas:

URLs absolutas

Incluem o endereço completo: scheme, host e path:

https://www.example.com/catalog/courses

Usadas ao linkar para sites externos ou quando o endereço completo é necessário (emails, APIs, redirects).

URLs relativas

Omitem o scheme e o host, usando apenas o path (relativo à página atual):

<!-- Em https://www.example.com/catalog/roadmap -->
<a href="/catalog/courses">Cursos</a>          <!-- Caminho absoluto -->
<a href="courses">Cursos</a>                    <!-- → /catalog/courses -->
<a href="../about">Sobre</a>                    <!-- → /about -->
Tipo Exemplo Quando Usar
Absoluta https://example.com/page Links externos, APIs, emails
Raiz-relativa /catalog/courses Navegação interna (mais comum no Rails)
Relativa courses ou ../about Relativa à página atual

No Rails, você usará principalmente caminhos raiz-relativos gerados por route helpers como catalog_course_path.


Por que URLs importam para desenvolvedores

Entender a anatomia de URLs não é apenas acadêmico: é essencial para desenvolvimento web:

  • Roteamento: O Rails mapeia URLs para actions de controllers. Cada rota que você define é um padrão de URL.
  • SEO: Mecanismos de busca usam URLs para entender a estrutura do seu site. URLs legíveis ajudam pessoas e robôs a entender uma página, embora pesem pouco no ranking.
  • Segurança: Dados sensíveis em URLs (como tokens em query strings) podem vazar pelo histórico do navegador, logs do servidor e headers de referência.
  • Depuração: Quando algo dá errado, a URL é a primeira coisa que você verifica: caminho errado? Parâmetro faltando? Protocolo errado?
  • APIs: APIs RESTful são construídas inteiramente em torno de URLs bem estruturadas.
# No Rails, rotas definem padrões de URL:
# GET /catalog/courses/:slug → Catalog::CoursesController#show

# A URL diz ao Rails:
# - Verbo HTTP: GET (seguro, somente leitura)
# - Controller: Catalog::CoursesController
# - Action: show
# - Parâmetro: slug = "url-anatomy"

Uma breve história

Tim Berners-Lee criou as URLs por volta de 1990, como parte da World Wide Web. A RFC 1738 as especificou pela primeira vez em 1994; as regras atuais vêm da RFC 3986 e do WHATWG URL Standard que os navegadores seguem.

O design original foi intencionalmente legível por humanos: você deveria ser capaz de olhar para uma URL e ter uma ideia aproximada do que ela aponta. Esse princípio ainda guia o bom design de URLs hoje:

# Bom: descritivo, legível
https://example.com/catalog/courses/url-anatomy

# Ruim: opaco, sem significado
https://example.com/p?id=48372&v=2&ref=x

Resumo

Conceito Ponto Chave
URL Uniform Resource Locator: o endereço completo para encontrar um recurso na web
URI vs URL vs URN URI é o termo guarda-chuva; URL inclui localização; URN é apenas nome
Componentes Scheme, host, port, path, query string e fragment
Absoluta vs Relativa Absoluta inclui o endereço completo; relativa é baseada na página atual
Por Que Importa Roteamento, SEO, segurança, depuração e design de APIs dependem de URLs
Bom Design de URL Legível por humanos, descritivo e logicamente estruturado
Aula 1 de 7 · grátis

Continue com a aula 2

Scheme e protocolo

Explica como o scheme escolhe o protocolo, compara HTTP e HTTPS e mostra outros schemes e helpers do Rails.

Com uma conta grátis você também tem os quizzes, seu progresso e suas anotações, e a discussão.

Digite para buscar...