Indstilling af CMS-cache og hurtigere levering af sider
Med den indbyggede cache kan bluetronix CMS levere færdige sider direkte ved senere opkald. I denne tutorial lærer du, hvordan du indstiller cache-indstillingen pr. side, og hvilke forskelle der er vigtige for statiske, parameterafhængige, flersprogede og personlige sider.
Hvad er CMS-cachen?
Det bluetronix CMS kan cache det færdige HTML for en allerede genereret side. Ved et senere kald kan denne cache-version vises direkte, i stedet for at siden skal genereres fuldstændigt gennem CMS-site-renderingsprocessen hver gang.
På den måde kan mange sider leveres hurtigere, uden at alle PHP-behandlingstrin og databaseforespørgsler er nødvendige ved hver anmodning. Cache-indstillingen fastsættes individuelt for hver CMS-side.
Åbn cache-indstillingen for en side
Åbn den ønskede side i Editor og find Side-indstillinger via tandhjulsikonet. Her finder du indstillingen Cache.
Via dropdown-menuen kan du angive, om siden må caches. Som standard er cachen aktiveret.
Vælg den ønskede indstilling og tryk på Gem.
Cache: Ja – genbrug færdig side
Med Cache: Yes kan CMS gemme den færdigt genererede HTML-side. Hvis der ved et senere kald findes en passende, aktuel cache-version, kan det færdige HTML leveres direkte.
Seitenaufruf
↓
Passende Cache-Version vorhanden?
↓
Ja
↓
Fertiges HTML direkt ausgeben
Den fuldstændige renderingsproces behøver ikke at blive gennemgået igen ved et sådant kald. Hvis siden derimod skal genereres på ny, gennemgår den først normale CMS-behandling; derefter kan resultatet igen gemmes i cachen.
Cache: Nej – opret side fra bunden ved hvert opkald
Vælger du Cache: No, leveres siden ikke fra side-cachen. Ved hver anmodning gennemfører CMS den nødvendige renderingsproces igen.
Seitenaufruf
↓
CMS-Site-Rendering-Prozess
↓
PHP-Verarbeitung und benötigte Datenbankzugriffe
↓
Layout und Seiteninhalt erzeugen
↓
HTML ausgeben
Denne indstilling er velegnet til sider, hvis indhold skal være aktuelt ved hver anmodning eller genereres individuelt for den pågældende bruger.
Eksempel: Cach en normal indholdsside
En side som about_us.html viser normalt de samme indhold for alle besøgende. Med aktiveret cache-funktion kan CMS generere den og genbruge det færdige HTML til yderligere anmodninger.
/about_us.html → eigene Cache-Version
For besøgende ser websiden den samme ud som ved en ny genereret side. Om HTML stammer fra cachen kan ikke erkendes ud fra det synlige side-layout alene.
Hvornår bliver cache-versionen fornyet?
CMS'en tager ikke kun højde for det direkte sideindhold, men også for andre elementer på den færdige side. Dette inkluderer for eksempel det anvendte Layout, Header, Navigation, Footer og andre indbyggede sideelementer.
Ændres f.eks. footeren, eller der oprettes et nyt menupunkt, skal cache-versionen af en uændret indholdsside også opdateres. CMS'en tjekker de relevante elementer for siden og genererer ved relevante ændringer en ny cache-version.
Egne cache-versioner for GET-parametre
En side kan også caches, når den kaldes via GET-parametre. Det er afgørende, at en bestemt parameterkombination leverer det samme indhold, så længe de tilhørende data ikke ændrer sig.
Et produktkald kan for eksempel se sådan ud:
/index.html?productID=1
/index.html?productID=2
/index.html?productID=3
/index.html?productID=4
Hver af disse opkald kan vise et andet produktindhold. Derfor kan CMS bruge en særskilt cache-version for hver af parameterkombinationerne.
GET-parametre alene er ikke grund til at deaktivere cachen. Forudsætningen er, at den enkelte cache-version må indeholde det samme indhold for alle besøgende, som den leveres til.
Separate cache-versioner for forskellige sprog
Ved flersprogede websteder tages også sproget i betragtning. Det samme produkt kan f.eks. indeholde forskellige tekster på en engelsk, tysk og fransk webside.
https://www.my-demo.com/index.html?productID=1 → Englisch
https://www.my-demo.de/index.html?productID=1 → Deutsch
https://www.my-demo.fr/index.html?productID=1 → Französisch
Cache-versionerne skal derfor også passe til det pågældende sprog. På den måde kan det samme produktkald leveres på hvert sprog med de passende tekster.
Hvornår skal du bruge Cache: No?
For sider med brugerafhængigt indhold bør du deaktivere side-cachen. En personlig kontoside kan have den samme URL, men vise forskellige oplysninger for hver registrerede bruger.
/MyAcoount.html → Benutzer Max → eigene Shop-Käufe
/MyAcoount.html → Benutzer Ross → andere Shop-Käufe
Disse personlige indhold må ikke genbruges som en generel cache-version for andre besøgende. Sæt cachen til Nej for en sådan side.
Også for /Search.html kan Cache: No være fornuftigt, hvis søgeresultaterne skal beregnes på ny ved hver anmodning, eller de afhænger af input, der ikke er taget i betragtning i cachen.
Aktiver ikke side-cachen for output, der indeholder personlige data om forskellige brugere under den samme URL.
Sammendrag
Med Cache: Ja kan passende sider genbruges som færdig HTML og leveres hurtigere. Forskellige GET-parametre og sprog kan have deres egne cache-versioner. Ændringer i relevante sideelementer fører til fornyelse af de påvirkede cache-versioner.
For personlige kontosider eller andet indhold, der skal genereres brugerafhængigt ved hver åbning, vælger du Cache: Nej. Denne indstilling finder du direkte i editoren under Sides-indstillinger → Cache.
FAQ
hvad kunder ofte spørger os
Hvor finder jeg cache-indstillingen for en CMS-side?
Åbn den ønskede side i editoren og gå via tandhjulsikonet til Sides-indstillinger. Der finder du valget Cache.
Hvilken cache-indstilling er aktiveret som standard?
Som standard er side-cachen aktiveret.
Hvad sker der ved Cache: Ja?
CMS'et kan gemme den færdige HTML og ved senere kald levere en passende, aktuel cache-version direkte. Dermed behøver siden ikke at blive fuldstændig genskabt ved hver åbning.
Hvad sker der ved Cache: Nej?
Siden genskabes ved hver åbning gennem den nødvendige CMS-site-renderingsproces og leveres ikke fra side-cachen.
Bliver cachen fornyet, hvis jeg ændrer headeren, navigationen eller footer?
Ja. CMS'et tager også højde for relevante elementer, der er integreret i siden, og ved passende ændringer genereres en ny cache-version.
Kan en side med GET-parametre caches?
Ja. For eksempel kan productID=1 og productID=2 have hver deres egne cache-versioner, så længe deres indhold kan genbruges til de respektive anmodninger.
Er der forskellige cache-versioner for forskellige sprog?
Ja. Sproget tages i betragtning, så for eksempel den engelske, tyske og franske version af et produktkald kan have forskellige cache-versioner.
Skal jeg aktivere cachen for personlige kontosider?
Nej. En personlig kontoside som /MyAcoount.html kan vise forskellige data under den samme URL afhængigt af den indloggede bruger. Brug derfor Cache: Nej.
Hvordan håndterer jeg cachen for en søgeside?
For /Search.html kan Cache: Nej være fornuftigt, hvis søgeresultaterne skal beregnes på ny ved hver åbning eller afhænger af yderligere input.