Dansk hosting fra Aalborg
Servere i Europa
24/7/365 dansk support
[email protected]
Migrering og flytning 8 min. læsning Opdateret 3. oktober 2026

Billeder vises ikke efter en flytning — sådan finder du dem igen

Billeder mangler i WordPress efter en flytning? Det er næsten altid gamle adresser i databasen eller en uploads-mappe, der ikke kom med. Se løsningen.

Billeder vises ikke efter en flytning — sådan finder du dem igen

Kort svar: Mangler billeder i WordPress efter en flytning, så åbn et manglende billede i en ny fane og se adressen og statuskoden. Peger den på det gamle domæne, skal adresserne i databasen erstattes med et værktøj, der håndterer serialiserede data, fx wp search-replace. Giver den 404 på det nye domæne, kom wp-content/uploads ikke med; giver den 403, er det rettigheder eller en gammel .htaccess-regel.

Fagligt gennemgået: 2. oktober 2026

Når billederne forsvinder efter en flytning, er der to hovedforklaringer: enten peger adresserne i databasen stadig på det gamle domæne, eller også kom wp-content/uploads ikke med i flytningen. Derudover findes en række mindre klassikere – rettigheder, miniaturer, WebP-filer og CDN – som denne guide også gennemgår.

Højreklik på et manglende billede og vælg at åbne det i en ny fane. Adressen og fejlen i browseren afslører, hvilken af forklaringerne det er.

Før du ændrer noget: Tag en backup af databasen, før du kører søg-og-erstat. En forkert erstatning rammer tusindvis af rækker på én gang og kan ikke fortrydes uden backup. Lad den gamle server og dens filer stå urørt, indtil du har bekræftet, at alle billeder er på plads det nye sted.

1. Læs adressen og statuskoden

Åbn browserens udviklerværktøjer (F12), vælg fanen Netværk, filtrér på billeder og genindlæs siden. De røde linjer viser præcis, hvilke billeder der fejler, og hvorfor:

Det ser duÅrsagGå til
Adressen indeholder det gamle domæneGamle URL’er i databasenTrin 2
Nyt domæne, status 404Filen findes ikke på den nye serverTrin 3
Nyt domæne, status 403Rettigheder, ejerskab eller .htaccess-regelTrin 5
Billedet blokeres som „mixed content“Adressen starter med http på et https-siteTrin 2
Kun miniaturer eller beskårne udgaver fejlerSkalerede størrelser manglerTrin 4
Fejl kun på .webp– eller .avif-adresserOptimerede filer kom ikke medTrin 5
Filen findes, men ikke i mediebiblioteketDatabaseposterne manglerTrin 6

2. Erstat det gamle domæne i databasen

Peger adressen på det gamle domæne, ligger de gamle adresser i databasen. WordPress gemmer den fulde URL i indholdet, og en flytning ændrer den ikke af sig selv.

Brug et søg-og-erstat-værktøj, der håndterer serialiserede data – ikke en simpel SQL-erstatning, som ødelægger indstillinger gemt som arrays, fordi tekstlængden står angivet i dem. WP-CLI gør det korrekt. Kør først en prøvekørsel, der kun tæller:

wp search-replace 'https://gammeltdomaene.dk' 'https://nytdomaene.dk' --skip-columns=guid --dry-run
wp search-replace 'https://gammeltdomaene.dk' 'https://nytdomaene.dk' --skip-columns=guid

Undlad bevidst guid. Den skal ikke ændres – den bruges som unik identifikator, ikke som adresse.

Varianter, der ofte bliver glemt

  • http og www: det gamle domæne kan stå som både http://, https://, med og uden www. Kør en erstatning for hver variant, der findes.
  • Escaped adresser: sidebyggere gemmer ofte data som JSON, hvor adressen står som https:\/\/gammeltdomaene.dk. Søg også efter den form.
  • Egne tabeller: sidebyggere og plugins har nogle gange egne tabeller uden WordPress-præfikset. Brug --all-tables for at få dem med.
  • Genereret CSS: sidebyggere gemmer baggrundsbilleder i genererede CSS-filer. Brug byggerens eget værktøj til at regenerere CSS eller erstatte URL’er efter søg-og-erstat.

Tjek også indstillingerne upload_path og upload_url_path med wp option get upload_path. Er de sat til en absolut sti eller adresse fra den gamle server, leder WordPress det forkerte sted, også for nye uploads. Normalt skal begge være tomme.

3. Kopiér uploads-mappen, hvis filerne mangler

Peger adressen rigtigt, men billedet giver 404, så kom filerne ikke med. Tjek om wp-content/uploads findes og har indhold. Mangler den, skal den kopieres fra den gamle server eller hentes fra en backup.

Det er den mest almindelige fejl ved manuelle flytninger, fordi uploads-mappen ofte er den største og timer ud undervejs. Har du SSH på begge servere, er rsync mere robust end en FTP-overførsel, fordi den kan genoptages og kun kopierer det, der mangler:

rsync -avz bruger@gammelserver:/sti/til/wp-content/uploads/ wp-content/uploads/

Kommer sitet fra en Windows-server, så tjek store og små bogstaver. Windows skelner ikke mellem Billede.JPG og billede.jpg, men det gør en Linux-server. Står filnavnet med store bogstaver på disken og små i databasen, giver billedet 404.

Har du flyttet med et plugin, der pakker sitet i én stor fil, så tjek også pluginnets log for „skipped“ eller „timeout“. Mange af dem springer stille filer over, som er større end en grænse, og så mangler præcis de største billeder – bannere og herobilleder – mens alt andet er på plads.

4. Genskab miniaturer og andre billedstørrelser

Billeder vises ikke efter flytning af WordPress: tjek adressen, søg-og-erstat domænet, kopiér uploads-mappen, og ret rettigheder ved 403

Er det kun de små udgaver – miniaturer i oversigter, produktbilleder i gridet – der mangler, mens originalen kan åbnes, så er det de skalerede størrelser, der ikke kom med eller aldrig blev lavet. WordPress laver flere kopier af hvert billede ved upload, og et nyt tema eller en webshop kan kræve størrelser, det gamle ikke havde.

wp media regenerate --only-missing --yes

Med --only-missing laves kun de størrelser, der mangler, hvilket sparer tid og plads. Uden WP-CLI kan et plugin til at genskabe miniaturer gøre det samme. Det tager tid på et stort mediebibliotek, så kør det uden for spidsbelastning. For webshops, se også uskarpe produktbilleder efter temaskift.

Når kun én type sider mangler billeder

Mangler billederne kun på én bestemt type sider – fx kun i bloggen, kun i produktgalleriet eller kun i sidebyggerens sektioner – så er adresserne gemt et sted, søg-og-erstat ikke nåede: i temaets tilpasningsindstillinger, i sidebyggerens egne tabeller eller som absolutte stier i et plugin. Kør søg-og-erstat igen med --all-tables, og tjek bagefter Udseende → Tilpas for logo og baggrundsbilleder, som ofte skal vælges forfra.

5. Når serveren nægter at vise billederne

Får du en 403 Forbidden på selve billedadressen, findes filen, men webserveren må ikke læse den. Det er rettigheder eller ejerskab efter flytningen: filer skal stå til 644 og mapper til 755, og de skal ejes af den bruger, webserveren kører som. Se filrettigheder i WordPress.

find wp-content/uploads -type d -exec chmod 755 {} \;
find wp-content/uploads -type f -exec chmod 644 {} \;

En anden klassiker er en .htaccess i uploads-mappen fra den gamle server med regler mod hotlinking, som nu rammer dit eget nye domæne – slet eller ret den. Og hentes billederne fra et CDN, skal CDN’et pege på den nye server og have cachen ryddet; ellers serverer det stadig den gamle placering.

WebP- og AVIF-udgaver kan også drille. Har et optimeringsplugin på den gamle server lavet .webp-filer og omskrevet adresserne, men filerne ikke kom med, så mangler billederne kun i browsere, der beder om WebP. Slå pluginnets omskrivning fra, eller lad det generere filerne igen.

Er sitet samtidig skiftet til https, blokerer browseren billeder, der stadig hentes over http. Det ses som „mixed content“ i konsollen og løses med søg-og-erstat fra http:// til https://. Se mixed content efter SSL.

6. Filerne er der, men ikke i mediebiblioteket

Så mangler databasens poster for filerne. Filerne findes, men WordPress ved ikke, at de er der – typisk fordi kun filerne blev flyttet, eller fordi databasen kom fra en ældre backup end filerne. Med WP-CLI kan du importere filer til mediebiblioteket, og et plugin til at synkronisere mediebiblioteket kan bygge posterne op igen ud fra filerne. Vær opmærksom på, at nyoprettede poster ikke automatisk bliver koblet til de indlæg, der brugte billederne; det kræver, at databasen og filerne kommer fra samme tidspunkt.

Tjekliste, før du erklærer flytningen færdig

  • Sammenlign antallet af filer i wp-content/uploads på gammel og ny server – tallene skal være ens (find wp-content/uploads -type f | wc -l).
  • Søg i databasen efter det gamle domæne, fx med wp db search 'gammeltdomaene.dk'. Resultatet skal være nul rækker, ellers er noget ikke erstattet.
  • Åbn forsiden, en artikel, et produkt og mediebiblioteket i et privat vindue – fire sider, der tilsammen bruger de fleste billedstørrelser.
  • Upload et nyt billede, og se, at det vises. Det tester rettighederne på den nye server.
  • Ryd side-, CDN- og browsercache, og tjek konsollen for mixed content.

Undgå det næste gang

En flytning bør laves med et værktøj, der tager filer og database fra samme tidspunkt og retter adresserne undervejs – og testes, før domænet peges om. Hos Hostious er migrering af WordPress- og WooCommerce-sites gratis, så du ikke selv skal flytte uploads-mappen. Se også hvordan du flytter en WordPress-hjemmeside og tjeklisten efter flytningen.

Læs også

Ofte stillede spørgsmål om manglende billeder

Kan jeg bare erstatte adresserne med SQL?

Nej. Mange indstillinger er gemt serialiseret, hvor tekstlængden står angivet. En simpel erstatning ødelægger dem.

Hvorfor virker nogle billeder og ikke andre?

Typisk fordi de nyeste blev uploadet efter flytningen, mens de gamle stadig peger på det tidligere domæne.

Hvorfor mangler kun miniaturerne, mens originalbillederne virker?

Fordi de skalerede størrelser ikke kom med eller aldrig blev lavet til det nye tema. Kør wp media regenerate, eller brug et plugin til at genskabe miniaturer, så WordPress laver alle størrelser igen.

Billedet giver 403 Forbidden, selv om filen findes. Hvad er galt?

Webserveren må ikke læse filen: rettighederne er strammere end 644/755, ejeren er forkert, eller en .htaccess i uploads-mappen blokerer. Ret rettighederne, og tjek for gamle hotlink-regler.

Skrevet af Marc, stifter af Hostious

Jeg hedder Marc og har stiftet Hostious. Vi hoster WordPress-hjemmesider og WooCommerce-webshops for danske virksomheder – drevet fra Aalborg-området med servere i Europa – og jeg skriver guiderne her ud fra det, vi ser i driften hver dag.

Udgivet 28. august 2026Opdateret 3. oktober 2026Fagligt gennemgået 2. oktober 2026

Samme emne

Fortsæt med emnet

Alle guides: Migrering og flytning