Hvad er en URL?
URL står for Uniform Resource Locator - det er webbens adressesystem. En URL fortæller din browser præcis hvor den skal finde en ressource på internettet.
URL Definition
URL (Uniform Resource Locator) er en standardiseret adresse der peger på en specifik ressource på internettet.
Tænk på en URL som en præcis vejadresse for internettet - den fortæller eksakt hvor browseren skal hen, hvilken protokol den skal bruge, og hvad den skal hente.
Eksempel på en komplet URL:
URL Anatomi - Alle Komponenter
1Protokol (Scheme)
Protokollen definerer hvordan data skal overføres mellem browser og server.
HyperText Transfer Protocol - Usikker forbindelse (data kan aflæses)
HTTP Secure - Krypteret forbindelse med SSL/TLS (anbefalet!)
File Transfer Protocol - Til filoverførsler
Email protokol - Åbner email klient (mailto:info@example.com)
2Domæne (Domain/Host)
Domænet identificerer den server hvor ressourcen er placeret.
Populære TLDs: .com, .dk, .net, .org, .io, .app, .dev
3Port
Porten specificerer hvilken netværksport der skal bruges. Oftest skjult fordi standard porte bruges.
4Path (Sti)
Stien viser placeringen af den specifikke ressource på serveren.
/produkter/sko/lobeskoHierarkisk struktur - fra generelt til specifikt
/blog/2024/seo-guideKan indeholde dato, kategorier, slug
/api/v1/users/123API endpoints med version og resource ID
5Query Parameters (Forespørgselsparametre)
Parametre der sendes til serveren, starter med ? og adskilles med &
?search=lobeskoEnkelt parameter: search med værdi "lobesko"
?farve=rod&size=42&brand=nikeMultiple parametre adskilt med &
?page=2&sort=pris&order=ascPaginering og sortering
Bemærk: Query parameters er synlige i URL'en - send aldrig følsomme data (passwords) via query params!
6Fragment/Anchor (Anker)
Fragmentet peger på en specifik sektion på siden, starter med #
#om-osSpringer til element med id="om-os"
#kommentarerBruges ofte til at linke til kommentarsektion
#section-3Navigation på lange sider
Vigtigt: Fragment sendes IKKE til serveren - det håndteres kun af browseren
Typer af URLs
Absolute URL
En komplet URL med alle komponenter - kan bruges overalt
https://example.com/produkter/skoRelative URL
Sti relativt til nuværende side - kun til intern navigation
/produkter/skoProtocol-relative URL
Arver protokol fra nuværende side (http eller https)
//example.com/produkter/skoRoot-relative URL
Starter fra domænets root (/)
/produkter/skoURL Encoding (Procent-kodning)
URLs kan kun indeholde visse tegn fra ASCII-sættet. Special characters og mellemrum skal erstattes med procent-kodede værdier.
Rød løbesko størrelse 42R%C3%B8d%20l%C3%B8besko%20st%C3%B8rrelse%2042URL Best Practices
Brug HTTPS
Altid brug sikker forbindelse - det er nu en ranking faktor for Google
Hold det kort
Korte, beskrivende URLs er nemmere at huske og dele
Brug beskrivende ord
Inkluder keywords der beskriver sidens indhold
Undgå special characters
Brug kun a-z, 0-9 og bindestreger i URL paths
Arbejde med URLs i JavaScript
URL Object API
// Parse en URL med URL API
const url = new URL('https://example.com:443/produkter/sko?farve=rod&size=42#anmeldelser')
console.log(url.protocol) // "https:"
console.log(url.hostname) // "example.com"
console.log(url.port) // "443"
console.log(url.pathname) // "/produkter/sko"
console.log(url.search) // "?farve=rod&size=42"
console.log(url.hash) // "#anmeldelser"
// URLSearchParams for query parameters
const params = new URLSearchParams(url.search)
console.log(params.get('farve')) // "rod"
console.log(params.get('size')) // "42"
// Tilføj/ændre parameters
params.set('brand', 'nike')
params.delete('size')
url.search = params.toString()
console.log(url.href) // Komplet URL med ændringerURL Encoding/Decoding
// Encode hele URL component
const text = "Rød løbesko"
const encoded = encodeURIComponent(text)
console.log(encoded) // "R%C3%B8d%20l%C3%B8besko"
// Decode
const decoded = decodeURIComponent(encoded)
console.log(decoded) // "Rød løbesko"
// Encode hele URI (bevarer :, /, ?, & osv.)
const uri = "https://example.com/søg?q=rød sko"
const encodedURI = encodeURI(uri)
console.log(encodedURI)
// "https://example.com/s%C3%B8g?q=r%C3%B8d%20sko"
// Moderne måde: URL constructor håndterer encoding automatisk
const url = new URL('https://example.com')
url.pathname = '/søg'
url.searchParams.set('q', 'rød sko')
console.log(url.href)
// "https://example.com/s%C3%B8g?q=r%C3%B8d+sko"Ofte Stillede Spørgsmål
Hvad er forskellen på URL, URI og URN?
URI (Uniform Resource Identifier): Overordnet term - enhver identifikator af en ressource
URL (Uniform Resource Locator): En URI der også fortæller hvordan man får adgang til ressourcen (med protokol og location)
URN (Uniform Resource Name): En URI der kun identificerer ressourcen ved navn, uden location info
Alle URLs er URIs, men ikke alle URIs er URLs.
Skal jeg bruge www eller ej?
Det er valgfrit, men vær konsistent. Moderne praksis er ofte at droppe "www". Vigtigst er at du videresender den ene version til den anden (301 redirect) så du ikke har duplicate content.
Hvor lang kan en URL være?
Teknisk set er der ingen officiel grænse, men forskellige browsere har forskellige limits:
- • Chrome: ~32,000 tegn
- • Firefox: ~65,000 tegn
- • Internet Explorer: 2,083 tegn (den mest restriktive)
Anbefaling: Hold URLs under 2,000 tegn for kompatibilitet, men ideelt under 100 tegn for SEO.
Case sensitive eller case insensitive?
Det afhænger af serveren. Windows servere er typisk case insensitive, Linux/Unix servere er case sensitive. Best practice: Brug altid lowercase for at undgå forvirring og duplicate content problemer.