Hurtigere hjemmeside hjælp til en langsom hjemmeside

same-origin policy

Same-origin policy er en sikkerhedsmodel der begrænser hvordan dokumenter og scripts fra én origin kan læse ressourcer fra en anden.

Skrevet af Kim Tetzlaff

Kort fortalt: Same-origin policy (SOP) er en fundamental sikkerhedsregel i browsere: et script på én origin må som udgangspunkt ikke læse data fra en anden origin. Formålet er at forhindre ondsindede sider i at stjæle sessioner, læse mails eller hive private API-svar ud af brugerens browser. Reglen påvirker ikke kun sikkerhed - den styrer også hvordan du må hente skrifttyper, kalde API’er og dele ressourcer mellem www, cdn og tredjepart, hvilket igen påvirker performance og kompleksitet.

Hvad består en “origin” af?

Tre dele skal matche:

  1. Skema - typisk https vs http (bland dem ikke; brug HSTS og konsistent redirect).
  2. Værtsnavn - example.dk vs www.example.dk vs cdn.example.dk er forskellige origins.
  3. Port - sjældent synlig for almindelige sites, men relevant i udvikling.

Derfor er split på mange subdomæner ikke “gratis”: hver ny origin kan kræve egne TLS-handshakes og CORS-regler.

Hvorfor det rammer performance og udvikling

  • Webfonts og cross-origin CSS: Browsere har særlige regler for hvordan fonter må bruges på tværs af origins; fejl giver synlige fejl i konsollen og fallback-fonte - med risiko for CLS.
  • API-kald: Dit frontend på www kalder måske API på api. - så skal serveren svare med korrekte CORS-headers; ellers får du fejl der ligner “langsom side”, men er blokering.
  • Tredjepart: Third-party scripts lever ofte på andre origins; de påvirker INP og netværk, mens SOP/CORS styrer hvad de må læse tilbage.

CORS og “preflight”

Når browseren laver visse cross-origin requests med fetch eller XMLHttpRequest, kan den sende en OPTIONS-forespørgsel først (preflight) for at spørge serveren om metode og headers er tilladt. Det er ekstra roundtrips - sjældent dominerende alene, men i kombination med mange mikro-API-kald kan det ses på langsomme net.

Relation til SEO og indeksering

Søgemaskiner crawler ikke som en almindelig browser med alle dine cookies - men du skal stadig sikre:

  • Konsistente canonical URL på tværs af www / ikke-www og parametre.
  • Korrekt hreflang når sprog ligger på forskellige hosts eller stier.
  • At vigtigt indhold ikke kun findes bag kryds-origin API-kald uden server-side rendering, hvis Google skal se det.

SOP forklarer ikke ranking i sig selv, men fejl i kryds-origin setup kan give duplikatindhold, ødelagte feeds eller usynlig tekst.

Performance-tips i samme åndedrag

  • Brug preconnect målrettet til de få kryds-origin hosts du ved bliver kritiske.
  • Reducér antal unødvendige subdomæner hvis de ikke giver reel isolationsgevinst.
  • Hold API og frontend kontrakter simple - færre preflights, færre overraskelser.

Relaterede begreber

FAQ

Hvad er en origin præcist?

Samme protokol (https), samme værtsnavn og samme port. https://www.eksempel.dk og https://cdn.eksempel.dk er forskellige origins - selvom de deler ‘domæne’ i daglig tale.

Løser CORS same-origin policy?

CORS er en mekanisme hvor serveren eksplicit tillader *kryds-origin* læsning under kontrol. Uden CORS-headers bliver mange cross-origin fetch begrænset af browseren.

Næste skridt fra begreb til handling

Guides og blogindlæg der matcher begrebets emne - ud fra fælles tags og sidens fokus.

Om forfatteren

Kim Tetzlaff

Kim skriver og vedligeholder indhold på hurtigere-hjemmeside.dk med fokus på målelig performance, Core Web Vitals og teknisk SEO. Målet er at gøre optimering konkret: hvad der faktisk flytter tal i feltdata, og hvordan du finder den korteste vej fra symptom til fix.

Kim Tetzlaff