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/lobesko
Hierarkisk struktur - fra generelt til specifikt
/blog/2024/seo-guide
Kan indeholde dato, kategorier, slug
/api/v1/users/123
API endpoints med version og resource ID
5Query Parameters (Forespørgselsparametre)
Parametre der sendes til serveren, starter med ?
og adskilles med &
?search=lobesko
Enkelt parameter: search med værdi "lobesko"
?farve=rod&size=42&brand=nike
Multiple parametre adskilt med &
?page=2&sort=pris&order=asc
Paginering 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-os
Springer til element med id="om-os"
#kommentarer
Bruges ofte til at linke til kommentarsektion
#section-3
Navigation 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/sko
Relative URL
Sti relativt til nuværende side - kun til intern navigation
/produkter/sko
Protocol-relative URL
Arver protokol fra nuværende side (http eller https)
//example.com/produkter/sko
Root-relative URL
Starter fra domænets root (/)
/produkter/sko
URL 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 42
R%C3%B8d%20l%C3%B8besko%20st%C3%B8rrelse%2042
URL 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 ændringer
URL 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.