Dansk hosting fra Aalborg
100% CO₂-neutral hosting
24/7/365 dansk support
support@hostious.io
● Hostious viden · artikel

LiteSpeed Cache til WooCommerce: privat cache, ESI og undtagelser

Skrevet af , stifter af Hostious · Udgivet 30. august 2026 · Opdateret 30. august 2026
LiteSpeed Cache til WooCommerce: privat cache, ESI og undtagelser

Kort svar: LiteSpeed Cache og WooCommerce er en stærk kombination – når tre ting er på plads: kurv, checkout og Min konto skal aldrig caches offentligt (LiteSpeed håndterer det automatisk, så længe WooCommerce-integrationen er aktiv), indloggede kunder skal have privat cache, og dynamiske stumper som kurv-ikonet kan serveres med ESI, så resten af siden stadig kan cache-serveres. Test altid som kunde i inkognito – aldrig som administrator.

En webshop stiller cache-systemet over for et dilemma: siderne skal være lynhurtige, men kurven, navnet i headeren og checkout er personlige. LiteSpeed Cache løser det med tre værktøjer – offentlig cache, privat cache og ESI – og de fleste WooCommerce-cacheproblemer handler om, at ét af de tre lag er sat forkert.

Kontrolramme: WordPress 7.1, WooCommerce 11.0 og PHP 8.4.23 udgør versionsgrundlaget pr. 30. august 2026; menupunkternes navne kan variere mellem LiteSpeed Cache-versioner. Eksemplet i billedet er genskabt.

De tre lag: offentlig, privat og ESI

Offentlig cache er én kopi til alle – perfekt til produktsider og kategorier. Privat cache er en kopi pr. besøgende – LiteSpeed-serverens særlige evne, som gør selv indloggede kunders sider hurtige uden at blande dem sammen. ESI (Edge Side Includes) deler en side op: skabelonen serveres fra offentlig cache, mens markerede “huller” (kurv-ikon, velkomstnavn) fyldes med privat indhold ved hver visning. Sammen betyder det, at en webshop ikke behøver vælge mellem fart og korrekthed.

Grundopsætningen for WooCommerce

Genskabt eksempel: LiteSpeed Cache-opsætning for WooCommerce med undtagelser, privat cache og ESI
Genskabt eksempel, 30. august 2026: de fire indstillinger, der bærer en WooCommerce-shop på LiteSpeed. Eksemplet er ikke data fra hostious.io.
  • WooCommerce-integrationen: med WooCommerce aktivt genkender LiteSpeed Cache automatisk kurv, checkout og Min konto og holder dem ude af offentlig cache. Ryd aldrig op i undtagelseslisterne uden at vide, at automatikken ligger under.
  • Privat cache for indloggede: slå “Cache Logged-in Users” til som privat cache – så får faste kunder og B2B-brugere også hurtige sider.
  • Vary på kurv-tilstand: integrationens vary-mekanisme sørger for, at besøgende med varer i kurven ikke får sider fra den tomme kurvs cache. Den følger med automatikken – endnu en grund til ikke at slå integrationen fra.
  • Purge ved lagerændringer: sørg for at produkt- og kategorisider purges ved ordrer og lagerændringer, så “på lager”-visningen følger virkeligheden.

ESI til kurv-ikon og dynamiske stumper

Viser dit tema kurvantal eller kundens navn på alle sider, ville hele sitet i princippet være u-cachebart. ESI løser det: slå ESI til, og LiteSpeed serverer skabelonen fra cache, mens kurv-blokken hentes privat. Bemærk to forhold: ESI kræver en rigtig LiteSpeed-server (som hos LiteSpeed-hosting) – og hver ESI-blok koster et delopslag, så brug det til få, små stumper, ikke til halve sider. Uden ESI er alternativet at hente kurv-antallet med AJAX efter indlæsning – mange temaer gør det allerede.

Typiske fejlbilleder

SymptomSandsynlig årsagLøsning
Kunder ser hinandens kurv/navnIntegration slået fra eller CDN cacher ovenpåSlå integrationen til; tjek CDN-regler – se cache-guiden
Kurv-ikonet viser 0 trods varerIkonet ligger i cachet HTML uden ESI/AJAXSlå ESI til for kurv-blokken, eller brug temaets AJAX-opsætning
„Udsolgt“ vises på varer på lagerManglende purge ved lagerændringAktivér purge-reglerne for produktsider
Checkout føles langsomCheckout caches aldrig – det er serverens rå fartObject cache og PHP – se checkout-guiden

Verifikation

Opsætningen holder, når en produktside viser cache-HIT i x-litespeed-cache-headeren for anonyme besøg, kurv og checkout aldrig gør, kurv-ikonet tæller rigtigt på cachede sider, og et fuldt testkøb i inkognito gennemføres med korrekt navn og total hele vejen. Læs headerne som beskrevet i header-guiden – og gentag testkøbet efter større ændringer i tema eller plugins.

Ofte stillede spørgsmål om LiteSpeed og WooCommerce

Skal jeg manuelt undtage kurv og checkout?

Nej – WooCommerce-integrationen gør det automatisk, også med danske slugs, fordi den følger sidetildelingen og ikke URL-mønstre. Manuelle undtagelser er kun nødvendige for særlige egne sider med dynamik.

Virker ESI på al hosting?

Nej – ESI og privat cache kræver en LiteSpeed-webserver (eller QUIC.cloud som edge). På anden hosting kører pluginnet i begrænset tilstand uden de funktioner – så er AJAX-vejen til dynamiske stumper alternativet.

Hvorfor er min shop stadig langsom med cache-HIT?

Så er det ikke leveringen, men browserarbejdet, der bremser: billeder, scripts og tredjepartskode. Følg webshop-hastighedsguiden – cache-laget er kun første halvdel.

Læs også