{"id":17836,"date":"2026-02-20T08:36:50","date_gmt":"2026-02-20T07:36:50","guid":{"rendered":"https:\/\/webhosting.de\/caching-ebenen-webhosting-server-cdn-cachemaster\/"},"modified":"2026-02-20T08:36:50","modified_gmt":"2026-02-20T07:36:50","slug":"niveau-de-cache-serveur-dhebergement-web-cdn-cachemaster","status":"publish","type":"post","link":"https:\/\/webhosting.de\/fr\/caching-ebenen-webhosting-server-cdn-cachemaster\/","title":{"rendered":"Niveaux de mise en cache dans l'h\u00e9bergement web : navigateur, serveur, cache d'objets et CDN"},"content":{"rendered":"<p>Je montre en deux phrases comment <strong>Niveaux de mise en cache<\/strong> interagissent dans l'h\u00e9bergement web : Le cache du navigateur fournit des fichiers statiques en local, le cache du serveur et le cache des objets r\u00e9duisent PHP et la base de donn\u00e9es, tandis qu'un <strong>CDN<\/strong> contenu aux n\u0153uds de p\u00e9riph\u00e9rie dans le monde entier. Ainsi, je r\u00e9duis le TTFB et le LCP de mani\u00e8re mesurable, je prot\u00e8ge la source des pics de charge et je mets \u00e0 disposition des contenus frais gr\u00e2ce \u00e0 une invalidation intelligente.<\/p>\n\n<h2>Points centraux<\/h2>\n<ul>\n  <li><strong>Cache du navigateur<\/strong>: Les actifs stock\u00e9s localement r\u00e9duisent la latence et les requ\u00eates.<\/li>\n  <li><strong>Cache du serveur<\/strong>: minimiser les pages HTML pr\u00e9d\u00e9finies TTFB.<\/li>\n  <li><strong>Cache d'objets<\/strong>Les valeurs-cl\u00e9s bas\u00e9es sur la RAM enregistrent les r\u00e9sultats de la base de donn\u00e9es.<\/li>\n  <li><strong>Cache du CDN<\/strong>: la livraison Edge r\u00e9duit les temps de chargement internationaux.<\/li>\n  <li><strong>Invalidation<\/strong>Des r\u00e8gles intelligentes permettent de maintenir les contenus \u00e0 jour.<\/li>\n<\/ul>\n\n<h2>Hi\u00e9rarchie de la mise en cache dans l'h\u00e9bergement web : comment chaque niveau s'imbrique dans les autres<\/h2>\n<p>Je classe les <strong>Niveaux<\/strong> toujours de proche en proche : d'abord le navigateur, puis le serveur, puis le cache d'objets, enfin le CDN. Cet ordre permet d'\u00e9viter les doublons et de garantir que la station la plus rapide traite la demande en premier. J'\u00e9vite les conflits en d\u00e9finissant des TTL, des priorit\u00e9s d'en-t\u00eate et des exclusions claires. Une approche structur\u00e9e comme dans les <a href=\"https:\/\/webhosting.de\/fr\/caching-hierarchies-technique-web-hebergement-boost\/\">Hi\u00e9rarchies de mise en cache<\/a> me fait gagner des jours de d\u00e9pannage. Ainsi, un site \u00e9volue sans que je doive ajouter des ressources en cas de pics de trafic, parce que l'espace disponible est insuffisant. <strong>Origine<\/strong> reste calme.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/webhosting-cache-5162.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Mise en cache du navigateur : des r\u00e8gles qui agissent imm\u00e9diatement<\/h2>\n<p>J'aime participer au <strong>Navigateur<\/strong>, car chaque octet compte. Avec Cache-Control, je d\u00e9finis des TTL longs pour les actifs immuables comme .css, .js, .woff2 et les images. Pour les fichiers avec empreinte (par ex. app.87c1.js), je choisis 1-12 mois et j'ajoute immuable ; pour les actifs sans empreinte, je choisis plut\u00f4t une semaine. J'utilise ETag et Last-Modified, mais je m'appuie principalement sur des directives claires comme public, max-age et s-maxage. Cela me permet de r\u00e9duire les RTT, de diminuer la bande passante et d'obtenir de meilleurs r\u00e9sultats. <strong>Noyau<\/strong> Web Vitals.<\/p>\n<p>Je veille \u00e0 ce que les ressources sensibles ou qui changent souvent ne soient pas mises en cache dans le navigateur. Je peux mettre en cache bri\u00e8vement les documents HTML pour les invit\u00e9s, mais pas les tableaux de bord connect\u00e9s. Les cha\u00eenes de requ\u00eate comme ?ver= rechargent le m\u00eame fichier dans de nombreuses configurations, c'est pourquoi je pr\u00e9f\u00e8re utiliser des noms de fichiers coh\u00e9rents avec un hachage. Je consid\u00e8re que le nombre d'URLs individuelles est faible pour que le <strong>Cache<\/strong> rencontre. De petites r\u00e8gles au d\u00e9but me permettent d'\u00e9conomiser beaucoup de temps.<\/p>\n\n<h2>Mise en cache du serveur : cache de page pour un TTFB rapide<\/h2>\n<p>J'acc\u00e9l\u00e8re le temps du premier octet via <strong>Serveur<\/strong>-Caching, par exemple avec Nginx FastCGI, Varnish ou LSCache. Le serveur d\u00e9pose des pages HTML d\u00e9j\u00e0 rendues et contourne ainsi PHP et la base de donn\u00e9es pour les utilisateurs anonymes. Le TTFB diminue ainsi souvent de mani\u00e8re spectaculaire, surtout en cas de trafic important. J'exclue les zones de connexion, les paniers d'achat et les pages personnalis\u00e9es via des cookies, des sessions ou des chemins d'acc\u00e8s. Les modifications apport\u00e9es au contenu d\u00e9clenchent des purges automatiques, de sorte que les utilisateurs peuvent utiliser de nouvelles informations. <strong>Contenu<\/strong> re\u00e7u.<\/p>\n<p>Je d\u00e9finis des r\u00e8gles granulaires : Les pages de cat\u00e9gories et de tags re\u00e7oivent des TTL plus longs que la page d'accueil, que je renouvelle plus souvent. Pour les configurations multilingues, je mets en cache s\u00e9par\u00e9ment chaque langue afin de conserver des taux de r\u00e9ussite propres. Les pages statiques 404\/410 peuvent \u00e9galement \u00eatre mises en cache et d\u00e9chargent la source. Avec Warmup\/Preload, je veille \u00e0 ce que les itin\u00e9raires importants soient d\u00e9j\u00e0 dans le cache avant que les pics n'arrivent. Ainsi, le <strong>Visiteurs<\/strong> d\u00e8s le premier clic.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/caching_ebenen_meeting_3748.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Cache d'objets : \u00e9conomiser les requ\u00eates de base de donn\u00e9es et PHP<\/h2>\n<p>Pour les sites dynamiques, je mise sur <strong>RAM<\/strong>-caches, comme Redis ou Memcached, pour stocker les requ\u00eates, les transitoires et les objets complexes. Ce niveau intervient lorsque le cache de page ne fonctionne pas, par exemple pour les utilisateurs connect\u00e9s, les filtres ou les prix individuels. Les requ\u00eates fr\u00e9quemment utilis\u00e9es atterrissent dans la m\u00e9moire de travail et y sont disponibles en quelques microsecondes. La charge de l'unit\u00e9 centrale diminue ainsi sensiblement et la base de donn\u00e9es respire. Gr\u00e2ce aux espaces de nommage et \u00e0 l'invalidation cibl\u00e9e, je maintiens la qualit\u00e9 de la recherche. <strong>Boutique<\/strong> propre.<\/p>\n<p>Dans WordPress, je combine le cache d'objets avec l'optimisation de la base de donn\u00e9es et un TTL judicieux par groupe. Les projets et les boutiques \u00e0 forte composante API gagnent ainsi constamment en temps de r\u00e9action. Pour les tr\u00e8s grands ensembles de donn\u00e9es, je segmente les cl\u00e9s afin de pouvoir rejeter certaines parties de mani\u00e8re cibl\u00e9e. Une strat\u00e9gie de cl\u00e9s propre m'\u00e9vite de supprimer inutilement de gros lots. Je propose une introduction compacte avec <a href=\"https:\/\/webhosting.de\/fr\/object-cache-base-de-donnees-optimisation-avantages-redis-cacheboost\/\">Cache d'objets avec Redis<\/a>, qui \u00e9vite les risques typiques de tr\u00e9buchement et <strong>Latence<\/strong> diminue.<\/p>\n\n<h2>Cache CDN : livraison globale sur la tranche<\/h2>\n<p>J'utilise un <strong>CDN<\/strong>, Le but est de rapprocher le contenu de l'utilisateur et de r\u00e9duire de moiti\u00e9 les temps d'acc\u00e8s internationaux. Les serveurs de p\u00e9riph\u00e9rie mettent en cache les ressources, y compris le HTML en option, et les livrent depuis la r\u00e9gion du visiteur. Cela permet de r\u00e9duire les sauts, de prot\u00e9ger la source en cas de pics et de r\u00e9duire les co\u00fbts. J'active stale-while-revalidate pour que les visiteurs re\u00e7oivent imm\u00e9diatement une version, m\u00eame en cas de retard du backend. Des TTL finement ajust\u00e9s par type de fichier assurent la fra\u00eecheur, sans <strong>Taux de r\u00e9ussite<\/strong> de mettre en danger.<\/p>\n<p>Pour la mise en cache HTML via le CDN, je d\u00e9finis des r\u00e8gles de contournement claires pour les cookies, les sessions et les chemins d'acc\u00e8s administrateur. J'utilise des noms d'h\u00f4te autonomes pour les ressources statiques, afin que le navigateur puisse charger en parall\u00e8le. Pour les services d'images, je mise sur l'optimisation \u00e0 la vol\u00e9e et j'utilise l'Accept\/Content-DPR de mani\u00e8re judicieuse. Un article sur <a href=\"https:\/\/webhosting.de\/fr\/cdn-configuration-performance-eviter-erreurs-reseau\/\">Configuration du CDN<\/a> permet d'\u00e9viter les erreurs de configuration typiques. Ainsi, je joue sur les points forts de <strong>bord<\/strong> sans effets secondaires.<\/p>\n\n<h2>Pratique WordPress : comment combiner les calques<\/h2>\n<p>Je combine le cache de page, le cache d'objet et le cache de navigateur avec un risque minimal de contenu obsol\u00e8te. Pour de nombreux sites, un cache de page pour les invit\u00e9s suffit, compl\u00e9t\u00e9 par un cache d'objet pour les r\u00f4les connect\u00e9s. Je d\u00e9finis d\u00e9lib\u00e9r\u00e9ment des r\u00e8gles HTML et de cookies pour que les paniers, les formulaires et les adh\u00e9sions restent corrects. Ensuite, je connecte un CDN et je dote les actifs de longs TTL, car les hachages de fichiers garantissent l'actualit\u00e9. Apr\u00e8s les mises \u00e0 jour de contenu, je lance des purges cibl\u00e9es pour <strong>Pertinence<\/strong> assurer.<\/p>\n<p>Des plugins comme WP Rocket, LiteSpeed Cache ou W3TC couvrent de nombreux \u00e9l\u00e9ments ; je teste toujours Minify et Combine \u00e9tape par \u00e9tape. Je v\u00e9rifie les strat\u00e9gies CSS et Defer critiques avec un staging, afin de ne pas bloquer le rendu. Pour WooCommerce, je fais attention aux exceptions pour le panier, le checkout et mon compte. Des pr\u00e9chargements contr\u00f4l\u00e9s par Cron maintiennent les pages importantes au chaud. Je reste ainsi rapide, coh\u00e9rent et <strong>\u00e9volutif<\/strong>.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/caching-ebenen-webhosting-8431.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Mesurer ce qui compte : TTFB, LCP, FID et largeur de bande<\/h2>\n<p>Je mesure le TTFB pour \u00e9valuer le <strong>Origine<\/strong> et LCP pour la vitesse per\u00e7ue. Une bonne mise en cache du serveur r\u00e9duit souvent le TTFB bien en dessous de 200-300 ms, surtout pour les requ\u00eates r\u00e9p\u00e9t\u00e9es. Une bonne mise en cache du navigateur et du CDN am\u00e9liore sensiblement le LCP, car les gros assets ne reviennent pas de la source. Je surveille FID et INP lorsque j'utilise beaucoup JavaScript et j'utilise Defer\/Preload de mani\u00e8re s\u00e9lective. La bande passante et les requ\u00eates diminuent lorsque j'utilise les hachages de fichiers de mani\u00e8re coh\u00e9rente et que j'utilise l'interface utilisateur. <strong>Navigateur<\/strong> travailler.<\/p>\n<p>Je v\u00e9rifie r\u00e9guli\u00e8rement First View vs Repeat View afin d'\u00e9valuer de mani\u00e8re r\u00e9aliste l'impact du cache du navigateur. Les comparaisons par pays m'indiquent si les sites Edge couvrent bien mes march\u00e9s cibles. Je trace les taux de succ\u00e8s de Edge pour trouver les itin\u00e9raires faibles et d\u00e9finir plus finement les TTL. Pour les versions, je planifie des fen\u00eatres de maintenance avec un trafic mod\u00e9r\u00e9 afin d'\u00e9viter que les purges ne tombent \u00e0 l'eau. Une routine de mesure propre permet d'\u00e9viter des <strong>Erreurs<\/strong>.<\/p>\n\n<h2>Comparaison des niveaux de mise en cache : T\u00e2ches, r\u00e8gles, outils<\/h2>\n<p>J'utilise ce tableau comme <strong>Antis\u00e8che<\/strong> pour prendre des d\u00e9cisions au quotidien. Elle montre ce que chaque niveau enregistre, comment j'applique les TTL et o\u00f9 j'exclue. Ainsi, j'ajuste rapidement sans essai-erreur et je reste flexible lors des mises \u00e0 jour. Le comparatif couvre \u00e9galement les outils WordPress qui fonctionnent de mani\u00e8re solide dans de nombreuses configurations. Des crit\u00e8res clairs me permettent de garantir une bonne qualit\u00e9 <strong>Performance<\/strong>.<\/p>\n<table>\n  <thead>\n    <tr>\n      <th>Niveau<\/th>\n      <th>Enregistre<\/th>\n      <th>Recommandation TTL<\/th>\n      <th>D\u00e9rivation pour<\/th>\n      <th>Effet<\/th>\n      <th>Outils WP<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>Cache du navigateur<\/td>\n      <td>CSS, JS, polices, images<\/td>\n      <td>1 semaine - 12 mois (avec hash)<\/td>\n      <td>HTML dynamique, Admin<\/td>\n      <td>Moins de requ\u00eates, meilleur LCP<\/td>\n      <td>WP Rocket, W3TC (En-t\u00eates)<\/td>\n    <\/tr>\n    <tr>\n      <td>Cache du serveur (Page)<\/td>\n      <td>Pages HTML rendues<\/td>\n      <td>5 min - 24 h (en fonction de l'itin\u00e9raire)<\/td>\n      <td>Logins, Cart, Checkout<\/td>\n      <td>Moins de TTFB, moins de CPU<\/td>\n      <td>Nginx FastCGI, Varnish, LSCache<\/td>\n    <\/tr>\n    <tr>\n      <td>Cache d'objets<\/td>\n      <td>Queries DB, transitoires<\/td>\n      <td>30 sec - 1 h (bas\u00e9 sur le groupe)<\/td>\n      <td>Donn\u00e9es critiques en direct<\/td>\n      <td>Des vues dynamiques plus rapides<\/td>\n      <td>Redis\/Memcached + W3TC<\/td>\n    <\/tr>\n    <tr>\n      <td>Cache du CDN<\/td>\n      <td>Assets, HTML en option<\/td>\n      <td>1 h - 30 jours (type de fichier)<\/td>\n      <td>HTML personnalis\u00e9<\/td>\n      <td>Moins de latence au niveau mondial<\/td>\n      <td>CDN + int\u00e9gration de plugins<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/caching_ebenen_tech_office_9372.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Les erreurs typiques et comment les \u00e9viter<\/h2>\n<p>Je vois souvent des <strong>En-t\u00eate<\/strong>, par exemple de longs expires, mais un contr\u00f4le de cache : no-store \u00e0 partir de plugins. De tels conflits entra\u00eenent des r\u00e9sultats incoh\u00e9rents et irritent les proxies. Je fais le m\u00e9nage dans les directives et je laisse une r\u00e8gle claire par ressource. Un autre classique : mettre en cache le HTML trop longtemps dans le navigateur, ce qui fait que les lecteurs voient d'anciens contenus. Je fixe des dur\u00e9es courtes pour le HTML et j'utilise des m\u00e9canismes de purge pour que le <strong>Feed<\/strong> reste actuel.<\/p>\n<p>Un goulot d'\u00e9tranglement fr\u00e9quent provient des cha\u00eenes de requ\u00eate que le CDN traite comme des ressources propres. Je minimise les param\u00e8tres inutiles ou je les normalise dans la marge. La mise en cache des zones connect\u00e9es entra\u00eene \u00e9galement des d\u00e9connexions ou des pertes de panier. Je g\u00e8re cela strictement par le biais de cookies et de signaux clairs de \"cache busting\". Pour l'optimisation des images, certains outils d\u00e9truisent les ETags ; j'utilise des signaux coh\u00e9rents. <strong>Hashs<\/strong>, Les clients peuvent ainsi valider de mani\u00e8re fiable.<\/p>\n\n<h2>Validation du cache : Purge intelligente, pas aveugle<\/h2>\n<p>Je lance des caches de mani\u00e8re cibl\u00e9e, pas globalement, pour <strong>R\u00e9sultats<\/strong> et d'\u00e9conomiser de la charge. Apr\u00e8s une mise \u00e0 jour, je ne purge que les routes concern\u00e9es et les flux associ\u00e9s, les sitemaps et les variantes d'amp. Pour les CDN, j'utilise des cl\u00e9s ou des balises de substitution pour que des familles enti\u00e8res de contenus disparaissent en une seule fois. stale-while-revalidate conserve entre-temps une copie fonctionnelle. Ainsi, les utilisateurs peuvent agir pendant que la source est fra\u00eeche. <strong>rend<\/strong>.<\/p>\n<p>J'aime bien les purges dans les vall\u00e9es o\u00f9 il y a du trafic, car je risque moins les d\u00e9marrages \u00e0 froid. Un \u00e9chauffement automatique remplit \u00e0 nouveau le cache. Pour les boutiques, je cr\u00e9e des r\u00e8gles qui renouvellent les pages de d\u00e9tail des produits apr\u00e8s des changements de prix ou de stock. Pour les magazines, les nouveaux articles purgent \u00e9galement la page d'accueil et les cat\u00e9gories pertinentes. Plus je travaille de mani\u00e8re granulaire, plus la stabilit\u00e9 est assur\u00e9e. <strong>Performance<\/strong> en cas de changement.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/developerdesk_caching_1234.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>Choisir un h\u00e9bergement avec focalisation sur la mise en cache<\/h2>\n<p>Je choisis un h\u00e9bergement avec un fort <strong>Pile<\/strong>: Nginx\/LSCache, HTTP\/2 ou HTTP\/3, Redis\/Memcached et un PHP-FPM l\u00e9ger. Les fournisseurs qui int\u00e8grent le cache FastCGI et les purges automatis\u00e9es m'\u00e9pargnent de nombreux plug-ins. Pour un grand nombre de visiteurs, une configuration avec cache d'objets et connexion CDN est payante \u00e0 plusieurs reprises. Lors des tests, webhoster.de fournit des valeurs fortes avec la mise en cache Nginx, Memcached et des plans \u00e9volutifs. J'obtiens ainsi des temps de r\u00e9ponse courts sans avoir recours \u00e0 des m\u00e9thodes exotiques. <strong>Astuces<\/strong>.<\/p>\n<p>Des limites transparentes aident \u00e0 la planification : descripteurs de fichiers ouverts, I\/O, RAM et workers. Je v\u00e9rifie si le backend affiche des m\u00e9triques sur le taux d'utilisation du cache, la tol\u00e9rance aux pannes et les statistiques de bord. Les sauvegardes doivent s'ex\u00e9cuter ind\u00e9pendamment du cache afin que les snapshots restent coh\u00e9rents. Un staging avec une logique de mise en cache identique \u00e9vite les surprises lors du d\u00e9ploiement. Un contr\u00f4le propre permet d'\u00e9conomiser plus tard des frais co\u00fbteux. <strong>Retours<\/strong>.<\/p>\n\n<h2>Plan pas \u00e0 pas pour un effet imm\u00e9diat<\/h2>\n<p>Je commence par un nettoyage <strong>Actif<\/strong>-Plan : hachage des fichiers pour CSS\/JS\/polices, puis longs TTL de navigateur. Ensuite, j'active le cache de pages sur le serveur, je d\u00e9finis des r\u00e8gles pour les exceptions et j'ajoute le preload. Ensuite, j'active Redis\/Memcached pour les parties \u00e0 forte charge de requ\u00eates. Ensuite, je connecte un CDN, je d\u00e9finis Edge-TTLs et stale-while-revalidate, et je mesure \u00e0 nouveau. Enfin, j'optimise les images, je supprime les bundles JS inutiles et je v\u00e9rifie Core <strong>signes vitaux<\/strong> avec des donn\u00e9es de laboratoire et de terrain.<\/p>\n<p>\u00c0 chaque modification, je contr\u00f4le la cha\u00eene : le cache du navigateur fait-il mouche ? Est-ce que le cache du serveur livre ? Le cache de l'objet intervient-il ? L'actif provient-il de l'Edge ? Je documente les TTL de mani\u00e8re centralis\u00e9e afin de ne pas les \u00e9craser par inadvertance. Je tiens des rollbacks \u00e0 disposition lorsqu'une r\u00e8gle est trop agressive. De petits tests r\u00e9p\u00e9t\u00e9s me montrent les effets plus clairement qu'un grand coup. Ainsi, le site reste rapide, stable et <strong>maintenable<\/strong>.<\/p>\n\n<h2>Strat\u00e9gies d'en-t\u00eate : d\u00e9finir proprement les priorit\u00e9s et Vary<\/h2>\n<p>Je d\u00e9finis les en-t\u00eates de mani\u00e8re coh\u00e9rente afin que chaque <strong>Niveau<\/strong> sait clairement ce qu'elle doit faire. Cache-Control propose Expires ; s-maxage contr\u00f4le les caches partag\u00e9s (CDN, proxies), max-age le navigateur. Pour les assets immuables, je combine public, max-age, s-maxage et immutable. Je place must-revalidate de mani\u00e8re s\u00e9lective sur HTML si je veux une fra\u00eecheur stricte. J'utilise Surrogate-Control lorsque le CDN doit lire ses propres r\u00e8gles sans \u00e9craser les en-t\u00eates du navigateur. S'il manque un en-t\u00eate, de nombreux proxies conseillent la fra\u00eecheur - ce que j'\u00e9vite. ETag et Last-Modified me servent de validateurs ; lorsque des outils brisent des ETags (par ex. optimisation d'images), je me fie plut\u00f4t \u00e0 des TTL et des empreintes digitales claires. Je g\u00e8re les contradictions (par ex. no-store avec de longues expirations) jusqu'\u00e0 ce qu'il ne reste qu'une seule directive claire.<\/p>\n<p>Je garde Vary minimal mais correct : l'encodage Accept est la norme pour gzip\/Brotli. Pour les formats d'image, je ne contr\u00f4le Vary : Accept que si je fais vraiment une sortie entre AVIF\/WebP\/JPEG. J'\u00e9vite un cookie Vary : global, car il ne permet pas d'\u00e9viter les <strong>Taux de r\u00e9ussite<\/strong> \u00e0 la place, je mets en liste blanche quelques cookies pertinents (comme la langue ou la devise) et je fais en sorte que les cookies de suivi n'aient pas d'influence sur la cl\u00e9 de cache. Je normalise les param\u00e8tres de requ\u00eate \u00e0 la marge : je supprime les param\u00e8tres UTM, je conserve la pagination et les filtres. Ainsi, la cl\u00e9 reste stable et judicieusement segment\u00e9e.<\/p>\n\n<h2>Conception de cl\u00e9s de cache : personnalisation sans perte de cache<\/h2>\n<p>Je d\u00e9finis ce qui constitue le <strong>Cl\u00e9 de cache<\/strong> constitue la base : Le sch\u00e9ma, l'h\u00f4te, le chemin et les cha\u00eenes de requ\u00eate nettoy\u00e9es constituent la base. Je s\u00e9pare sciemment les variantes de langue ou de pays - soit par sous-domaine, soit par pr\u00e9fixe de chemin (\/fr\/, \/en\/), soit par liste blanche de cookies dans le CDN. Je n'effectue des s\u00e9parations entre appareils (mobile\/ordinateur de bureau) que si le HTML ou les m\u00e9dias sont vraiment diff\u00e9rents ; dans le cas contraire, une cl\u00e9 commune reste plus avantageuse. Pour les boutiques, je divise \u00e9galement par devise ou par affichage de la TVA afin de maintenir la coh\u00e9rence de la pr\u00e9sentation des prix. Je supprime de la cl\u00e9 tout ce qui n'est pas pertinent au niveau du contenu - ainsi, la qualit\u00e9 de l'affichage augmente. <strong>Taux de succ\u00e8s<\/strong>.<\/p>\n<p>Je pr\u00e9f\u00e8re r\u00e9soudre la personnalisation avec <strong>Hole-Punching<\/strong>La majeure partie de la page peut \u00eatre mise en cache, je charge les petites zones (salutations, ic\u00f4ne du panier, recommandations) par AJAX\/Fetch ou j'utilise des espaces r\u00e9serv\u00e9s de type ESI sur la page d'accueil. <strong>Edge<\/strong>. Ainsi, le HTML et les requ\u00eates co\u00fbteuses restent dans le cache, tandis que les utilisateurs voient correctement les \u00e9l\u00e9ments individuels. Pour les donn\u00e9es sensibles, je place des cookies\/requ\u00eates sign\u00e9s et je garde d\u00e9lib\u00e9r\u00e9ment ces points finaux hors des caches partag\u00e9s. R\u00e9sultat : des pages rapides sans sacrifier la s\u00e9curit\u00e9.<\/p>\n\n<h2>R\u00e9silience : strat\u00e9gies d'accumulation et protection contre les effets de troupeau<\/h2>\n<p>Je travaille avec <strong>Soft-<\/strong> et <strong>Hard-TTLs<\/strong>Apr\u00e8s l'expiration du Soft-TTL, un proxy peut encore servir stale-while-revalidate pendant que le rendu est en cours en arri\u00e8re-plan. En cas de probl\u00e8mes dans le backend, stale-if-error intervient pour que les utilisateurs continuent \u00e0 recevoir des r\u00e9ponses. Je diffuse la gigue (variance al\u00e9atoire) dans les TTL, afin que tous les objets ne deviennent pas obsol\u00e8tes en m\u00eame temps et qu'un <strong>ru\u00e9e<\/strong> d\u00e9clencher la campagne. Une pr\u00e9-cache chaude et planifi\u00e9e des itin\u00e9raires importants avant les campagnes permet d'\u00e9viter les d\u00e9marrages \u00e0 froid.<\/p>\n<p>Je minimise les effets de troupeau en <strong>Request-Collapsing<\/strong> (une seule demande d'origine par cl\u00e9) et fixe des temps de verrouillage courts si de nombreuses revalidations simultan\u00e9es sont pr\u00e9vues. Un bouclier d'origine entre Edge et la source permet de regrouper les acc\u00e8s et de m\u00e9nager la base de donn\u00e9es. J'attribue aux caches n\u00e9gatifs (p. ex. 404) des TTL serr\u00e9s afin que les nouveaux contenus soient rapidement visibles ; je ne cache pratiquement pas les erreurs 5xx ou seulement tr\u00e8s bri\u00e8vement. Avec un budget de reprise et un backoff propres, je maintiens la stabilit\u00e9 de la source, m\u00eame si les API externes s'enlisent.<\/p>\n\n<h2>S\u00e9curit\u00e9 et conformit\u00e9 de la mise en cache<\/h2>\n<p>J'emp\u00eache syst\u00e9matiquement les fuites de donn\u00e9es : pour les domaines avec <strong>PII<\/strong>, Je d\u00e9finis le compte ou l'admin comme priv\u00e9\/non stock\u00e9 et je veille \u00e0 ce que les r\u00e9ponses avec Authorization ou Set-Cookie ne se retrouvent pas par inadvertance dans les caches partag\u00e9s. Je canonicalise les h\u00f4tes\/sch\u00e9mas pour que les proxies ne mettent pas en cache des variantes mixtes. Contre l'empoisonnement du cache, je supprime les en-t\u00eates non v\u00e9rifi\u00e9s en marge (par exemple X-Forwarded-* uniquement \u00e0 partir de sources fiables) et je r\u00e9gule les param\u00e8tres de requ\u00eate. Les t\u00e9l\u00e9chargements et les m\u00e9dias qui sont prot\u00e9g\u00e9s sont accompagn\u00e9s d'URL sign\u00e9es et \u00e9ph\u00e9m\u00e8res au lieu d'\u00eatre mis en cache ouvertement. Du point de vue de la conformit\u00e9, je documente les TTL et les purges afin que les contr\u00f4les restent compr\u00e9hensibles.<\/p>\n<p>Je veille \u00e9galement \u00e0 ce que les <strong>CORS<\/strong>-r\u00e8gles de la politique : Les r\u00e9ponses en amont re\u00e7oivent des TTL mod\u00e9r\u00e9s, les points de terminaison sensibles restent restrictifs. Pour les aper\u00e7us et les brouillons, je d\u00e9sactive strictement la mise en cache. Pour les redirections (301\/302), j'\u00e9value les TTL afin de pouvoir orienter rapidement les migrations sans m'attacher pendant des semaines \u00e0 de fausses destinations. L'\u00e9quilibre entre s\u00e9curit\u00e9, flexibilit\u00e9 et performance est ainsi maintenu.<\/p>\n\n<h2>D\u00e9bogage : comment v\u00e9rifier les hits, la revalidation et la fra\u00eecheur<\/h2>\n<p>Je lis les en-t\u00eates de r\u00e9ponse : l'\u00e2ge, le via ou l'\u00e9tat du cache X m'indiquent les succ\u00e8s\/\u00e9checs et les revalidations. Dans DevTools, je compare First vs. Repeat View, je v\u00e9rifie les validations 304 et j'observe si <strong>HTTP<\/strong>-Les validateurs sont utilis\u00e9s. Je teste avec un \u00e9tranglement (3G\/4G) et je supprime de mani\u00e8re cibl\u00e9e uniquement le cache du navigateur ou uniquement le cache du CDN pour isoler les niveaux. Pour le HTML, je mesure les d\u00e9rives TTFB sur la journ\u00e9e ; les anomalies indiquent souvent des caches de pages expir\u00e9s ou des r\u00e8gles en conflit.<\/p>\n<p>J'\u00e9tablis des r\u00e8gles simples <strong>Tableaux de bord<\/strong>: Edge-Hit-Rate, Bytes-Saved, Revalidate-Ratio et taux d'erreur selon les codes d'\u00e9tat. Je mets en \u00e9vidence les \u00e9v\u00e9nements de purge pour voir les corr\u00e9lations. Les contr\u00f4les synth\u00e9tiques des march\u00e9s cibles r\u00e9v\u00e8lent les sauts de latence ou les PoP faibles. Sous charge, je v\u00e9rifie si le Request-Collapsing est efficace et si la base de donn\u00e9es reste constante. Je vois ainsi rapidement o\u00f9 une petite r\u00e8gle a un grand effet - ou o\u00f9 elle doit \u00eatre frein\u00e9e.<\/p>\n\n<h2>R\u00e9glage fin de WordPress : REST, recherche et fragments<\/h2>\n<p>Je donne \u00e0 la <strong>API REST<\/strong> (\/wp-json) des TTL courts mais utiles et transf\u00e8re les r\u00e9ponses fr\u00e9quentes dans le cache des objets. Les pages de recherche (?s=) et les filtres tr\u00e8s variables re\u00e7oivent des TTL courts ou passent par le cache de la page pour que les r\u00e9sultats restent \u00e0 jour. Les archives peuvent vivre plus longtemps, les flux mod\u00e9r\u00e9ment. Les liens de pr\u00e9visualisation, les nonces et les actions d'administration sont strictement non-cachables. Les transients et les groupes d'options sont mapp\u00e9s proprement sur Redis\/Memcached afin qu'ils ne deviennent pas obsol\u00e8tes dans la base de donn\u00e9es.<\/p>\n<p>Dans les boutiques, je r\u00e9duis les produits impr\u00e9visibles. <strong>Fragments<\/strong>Je charge les snippets de panier d'achat\/de mini-carte de mani\u00e8re cibl\u00e9e et je les tiens \u00e0 l'\u00e9cart du CDN. Je ne divise les prix g\u00e9olocalis\u00e9s que si cela est l\u00e9galement n\u00e9cessaire ; sinon, je travaille avec la monnaie standard et je ne convertis que tardivement. Je r\u00e8gle raisonnablement les intervalles Heartbeat et Cron afin de ne pas g\u00e9n\u00e9rer en permanence des invalidations de cache. En outre, je r\u00e9gule les param\u00e8tres d'actifs des plugins afin d'\u00e9viter la cr\u00e9ation de nouvelles URL quasi identiques \u00e0 chaque mise \u00e0 jour.<\/p>\n\n<h2>Compression, protocoles et conseils<\/h2>\n<p>Je livre <strong>Brotli<\/strong> (si disponible) et fallback sur gzip. Important : Vary : d\u00e9finir correctement l'encodage Accept et garder les balises ET coh\u00e9rentes pour les fichiers pr\u00e9-compress\u00e9s, sinon le navigateur revalide inutilement. J'optimise les grandes images dans des formats modernes sans faire exploser la matrice Vary ; si je fournis un format diff\u00e9rent selon Accept, je garde les variantes clairement s\u00e9par\u00e9es. Les polices (woff2) re\u00e7oivent des TTL tr\u00e8s longs, combin\u00e9s avec font-display : swap pour un rendu propre.<\/p>\n<p>J'utilise <strong>Conseils sur les ressources<\/strong> cibl\u00e9 : pr\u00e9connexion aux h\u00f4tes CDN\/polices, pr\u00e9chargement pour les CSS\/polices critiques. Les priorit\u00e9s HTTP\/2\/3 aident \u00e0 donner la priorit\u00e9 aux ressources importantes ; je renonce \u00e0 HTTP\/2 Push, car il est souvent <strong>Taux de r\u00e9ussite<\/strong> dans la m\u00e9moire cache du navigateur. Les Early Hints (103) peuvent r\u00e9duire les temps de d\u00e9marrage du rendu, si le serveur\/CDN le supporte. Les hints sont des compl\u00e9ments - la base reste toujours un cache propre avec des TTL et des hachages de fichiers coh\u00e9rents.<\/p>\n\n<h2>D\u00e9ploiement : atomique, reproductible, respectueux du cache<\/h2>\n<p>Je d\u00e9ploie <strong>atomique<\/strong>: mettre en ligne de nouveaux assets avec hash, d\u00e9ployer des versions HTML avec de nouvelles r\u00e9f\u00e9rences, puis proc\u00e9der \u00e0 des purges cibl\u00e9es via des cl\u00e9s de substitution. Ainsi, les anciennes pages restent fonctionnelles jusqu'\u00e0 ce que tous les bords soient mis \u00e0 jour. Je d\u00e9ploie les grandes modifications par vagues et j'observe les taux de r\u00e9ussite ; si n\u00e9cessaire, j'augmente temporairement les TTL afin de prot\u00e9ger la source. J'\u00e9chelonne les purges pour que tout ne soit pas froid en m\u00eame temps.<\/p>\n<p>Avant les migrations de bases de donn\u00e9es, je g\u00e8le les r\u00e8gles de cache de pages, je mets en place des r\u00e8gles de cache de pages courtes et je les utilise. <strong>Fen\u00eatre de maintenance<\/strong> et je pr\u00e9chauffe ensuite les routes principales. Je garde la configuration sous forme de code afin que la mise en place et la production aient des logiques de mise en cache identiques. Pour les rollbacks, je mise sur un versionnement clair et des assets r\u00e9trocompatibles, afin que les caches des navigateurs et des CDN ne soient pas \u201epris entre deux feux\u201c.<\/p>\n\n<h2>Quand je cache d\u00e9lib\u00e9r\u00e9ment moins<\/h2>\n<p>Pour les tickers en direct, les chiffres d'inventaire, les ventes flash ou les tableaux de bord strictement personnalis\u00e9s, je choisis des TTL courts ou le contournement et je m'appuie davantage sur la mise en cache des objets et des requ\u00eates efficaces. Je laisse de c\u00f4t\u00e9 les WebSockets\/SSE - ils ne profitent pas de la mise en cache classique. Je s\u00e9pare proprement les tests A\/B pour que les variations ne diluent pas le cache. Ainsi, la <strong>Performance<\/strong> pr\u00e9visible, sans promettre une fausse fra\u00eecheur.<\/p>\n\n\n<figure class=\"wp-block-image size-full is-resized\">\n  <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/02\/webhost-cachingszene-4852.png\" alt=\"\" width=\"1536\" height=\"1024\"\/>\n<\/figure>\n\n\n<h2>En bref, on peut dire que c'est une bonne chose : La bonne combinaison fait la diff\u00e9rence<\/h2>\n<p>Je combine <strong>Niveaux<\/strong> conscient : le cache du navigateur permet d'\u00e9conomiser des requ\u00eates, le cache du serveur r\u00e9duit le TTFB, le cache des objets acc\u00e9l\u00e8re les vues dynamiques et le CDN fournit des r\u00e9sultats globalement rapides. Des chiffres tir\u00e9s de la pratique montrent qu'une strat\u00e9gie coordonn\u00e9e r\u00e9duit les temps de chargement jusqu'\u00e0 50 % et soutient la conversion. J'obtiens le plus grand effet de levier avec des TTL clairs, des hachages de fichiers coh\u00e9rents et une purification selon des r\u00e8gles plut\u00f4t que par intuition. Un coup d'\u0153il sur les valeurs mesur\u00e9es apr\u00e8s chaque modification permet d'\u00e9viter les retours en arri\u00e8re. En respectant cet ordre, on garde le contr\u00f4le sur la fra\u00eecheur, les co\u00fbts et la qualit\u00e9. <strong>Rapidit\u00e9<\/strong>.<\/p>\n<p>Je d\u00e9marre simplement, je mesure t\u00f4t et j'\u00e9largis progressivement : d'abord le navigateur et le serveur, puis le cache d'objets, ensuite le CDN. Ainsi, les performances augmentent de mani\u00e8re organique, sans que la maintenance ne devienne incontr\u00f4lable. Cette m\u00e9thode me permet de garder des sites rapides m\u00eame en cas de pics. Chaque niveau remplit une t\u00e2che pr\u00e9cise et ensemble, ils cr\u00e9ent un v\u00e9ritable site. <strong>Performance<\/strong>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Niveaux de mise en cache dans l'h\u00e9bergement web : le navigateur, le serveur, le cache d'objets et le CDN optimisent les temps de chargement. Conseils pour la mise en cache Wordpress et le cache cdn.<\/p>","protected":false},"author":1,"featured_media":17829,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_crdt_document":"","inline_featured_image":false,"footnotes":""},"categories":[733],"tags":[],"class_list":["post-17836","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress"],"acf":[],"_wp_attached_file":null,"_wp_attachment_metadata":null,"litespeed-optimize-size":null,"litespeed-optimize-set":null,"_elementor_source_image_hash":null,"_wp_attachment_image_alt":null,"stockpack_author_name":null,"stockpack_author_url":null,"stockpack_provider":null,"stockpack_image_url":null,"stockpack_license":null,"stockpack_license_url":null,"stockpack_modification":null,"color":null,"original_id":null,"original_url":null,"original_link":null,"unsplash_location":null,"unsplash_sponsor":null,"unsplash_exif":null,"unsplash_attachment_metadata":null,"_elementor_is_screenshot":null,"surfer_file_name":null,"surfer_file_original_url":null,"envato_tk_source_kit":null,"envato_tk_source_index":null,"envato_tk_manifest":null,"envato_tk_folder_name":null,"envato_tk_builder":null,"envato_elements_download_event":null,"_menu_item_type":null,"_menu_item_menu_item_parent":null,"_menu_item_object_id":null,"_menu_item_object":null,"_menu_item_target":null,"_menu_item_classes":null,"_menu_item_xfn":null,"_menu_item_url":null,"_trp_menu_languages":null,"rank_math_primary_category":null,"rank_math_title":null,"inline_featured_image":null,"_yoast_wpseo_primary_category":null,"rank_math_schema_blogposting":null,"rank_math_schema_videoobject":null,"_oembed_049c719bc4a9f89deaead66a7da9fddc":null,"_oembed_time_049c719bc4a9f89deaead66a7da9fddc":null,"_yoast_wpseo_focuskw":null,"_yoast_wpseo_linkdex":null,"_oembed_27e3473bf8bec795fbeb3a9d38489348":null,"_oembed_c3b0f6959478faf92a1f343d8f96b19e":null,"_trp_translated_slug_en_us":null,"_wp_desired_post_slug":null,"_yoast_wpseo_title":null,"tldname":null,"tldpreis":null,"tldrubrik":null,"tldpolicylink":null,"tldsize":null,"tldregistrierungsdauer":null,"tldtransfer":null,"tldwhoisprivacy":null,"tldregistrarchange":null,"tldregistrantchange":null,"tldwhoisupdate":null,"tldnameserverupdate":null,"tlddeletesofort":null,"tlddeleteexpire":null,"tldumlaute":null,"tldrestore":null,"tldsubcategory":null,"tldbildname":null,"tldbildurl":null,"tldclean":null,"tldcategory":null,"tldpolicy":null,"tldbesonderheiten":null,"tld_bedeutung":null,"_oembed_d167040d816d8f94c072940c8009f5f8":null,"_oembed_b0a0fa59ef14f8870da2c63f2027d064":null,"_oembed_4792fa4dfb2a8f09ab950a73b7f313ba":null,"_oembed_33ceb1fe54a8ab775d9410abf699878d":null,"_oembed_fd7014d14d919b45ec004937c0db9335":null,"_oembed_21a029d076783ec3e8042698c351bd7e":null,"_oembed_be5ea8a0c7b18e658f08cc571a909452":null,"_oembed_a9ca7a298b19f9b48ec5914e010294d2":null,"_oembed_f8db6b27d08a2bb1f920e7647808899a":null,"_oembed_168ebde5096e77d8a89326519af9e022":null,"_oembed_cdb76f1b345b42743edfe25481b6f98f":null,"_oembed_87b0613611ae54e86e8864265404b0a1":null,"_oembed_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_oembed_time_27aa0e5cf3f1bb4bc416a4641a5ac273":null,"_tldname":null,"_tldclean":null,"_tldpreis":null,"_tldcategory":null,"_tldsubcategory":null,"_tldpolicy":null,"_tldpolicylink":null,"_tldsize":null,"_tldregistrierungsdauer":null,"_tldtransfer":null,"_tldwhoisprivacy":null,"_tldregistrarchange":null,"_tldregistrantchange":null,"_tldwhoisupdate":null,"_tldnameserverupdate":null,"_tlddeletesofort":null,"_tlddeleteexpire":null,"_tldumlaute":null,"_tldrestore":null,"_tldbildname":null,"_tldbildurl":null,"_tld_bedeutung":null,"_tldbesonderheiten":null,"_oembed_ad96e4112edb9f8ffa35731d4098bc6b":null,"_oembed_8357e2b8a2575c74ed5978f262a10126":null,"_oembed_3d5fea5103dd0d22ec5d6a33eff7f863":null,"_eael_widget_elements":null,"_oembed_0d8a206f09633e3d62b95a15a4dd0487":null,"_oembed_time_0d8a206f09633e3d62b95a15a4dd0487":null,"_aioseo_description":null,"_eb_attr":null,"_eb_data_table":null,"_oembed_819a879e7da16dd629cfd15a97334c8a":null,"_oembed_time_819a879e7da16dd629cfd15a97334c8a":null,"_acf_changed":null,"_wpcode_auto_insert":null,"_edit_last":null,"_edit_lock":null,"_oembed_e7b913c6c84084ed9702cb4feb012ddd":null,"_oembed_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_time_bfde9e10f59a17b85fc8917fa7edf782":null,"_oembed_03514b67990db061d7c4672de26dc514":null,"_oembed_time_03514b67990db061d7c4672de26dc514":null,"rank_math_news_sitemap_robots":null,"rank_math_robots":null,"_eael_post_view_count":"681","_trp_automatically_translated_slug_ru_ru":null,"_trp_automatically_translated_slug_et":null,"_trp_automatically_translated_slug_lv":null,"_trp_automatically_translated_slug_fr_fr":null,"_trp_automatically_translated_slug_en_us":null,"_wp_old_slug":null,"_trp_automatically_translated_slug_da_dk":null,"_trp_automatically_translated_slug_pl_pl":null,"_trp_automatically_translated_slug_es_es":null,"_trp_automatically_translated_slug_hu_hu":null,"_trp_automatically_translated_slug_fi":null,"_trp_automatically_translated_slug_ja":null,"_trp_automatically_translated_slug_lt_lt":null,"_elementor_edit_mode":null,"_elementor_template_type":null,"_elementor_version":null,"_elementor_pro_version":null,"_wp_page_template":null,"_elementor_page_settings":null,"_elementor_data":null,"_elementor_css":null,"_elementor_conditions":null,"_happyaddons_elements_cache":null,"_oembed_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_time_75446120c39305f0da0ccd147f6de9cb":null,"_oembed_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_time_3efb2c3e76a18143e7207993a2a6939a":null,"_oembed_59808117857ddf57e478a31d79f76e4d":null,"_oembed_time_59808117857ddf57e478a31d79f76e4d":null,"_oembed_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_time_965c5b49aa8d22ce37dfb3bde0268600":null,"_oembed_81002f7ee3604f645db4ebcfd1912acf":null,"_oembed_time_81002f7ee3604f645db4ebcfd1912acf":null,"_elementor_screenshot":null,"_oembed_7ea3429961cf98fa85da9747683af827":null,"_oembed_time_7ea3429961cf98fa85da9747683af827":null,"_elementor_controls_usage":null,"_elementor_page_assets":[],"_elementor_screenshot_failed":null,"theplus_transient_widgets":null,"_eael_custom_js":null,"_wp_old_date":null,"_trp_automatically_translated_slug_it_it":null,"_trp_automatically_translated_slug_pt_pt":null,"_trp_automatically_translated_slug_zh_cn":null,"_trp_automatically_translated_slug_nl_nl":null,"_trp_automatically_translated_slug_pt_br":null,"_trp_automatically_translated_slug_sv_se":null,"rank_math_analytic_object_id":null,"rank_math_internal_links_processed":"1","_trp_automatically_translated_slug_ro_ro":null,"_trp_automatically_translated_slug_sk_sk":null,"_trp_automatically_translated_slug_bg_bg":null,"_trp_automatically_translated_slug_sl_si":null,"litespeed_vpi_list":null,"litespeed_vpi_list_mobile":null,"rank_math_seo_score":null,"rank_math_contentai_score":null,"ilj_limitincominglinks":null,"ilj_maxincominglinks":null,"ilj_limitoutgoinglinks":null,"ilj_maxoutgoinglinks":null,"ilj_limitlinksperparagraph":null,"ilj_linksperparagraph":null,"ilj_blacklistdefinition":null,"ilj_linkdefinition":null,"_eb_reusable_block_ids":null,"rank_math_focus_keyword":"Caching Ebenen","rank_math_og_content_image":null,"_yoast_wpseo_metadesc":null,"_yoast_wpseo_content_score":null,"_yoast_wpseo_focuskeywords":null,"_yoast_wpseo_keywordsynonyms":null,"_yoast_wpseo_estimated-reading-time-minutes":null,"rank_math_description":null,"surfer_last_post_update":null,"surfer_last_post_update_direction":null,"surfer_keywords":null,"surfer_location":null,"surfer_draft_id":null,"surfer_permalink_hash":null,"surfer_scrape_ready":null,"_thumbnail_id":"17829","footnotes":null,"_links":{"self":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/17836","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/comments?post=17836"}],"version-history":[{"count":0,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/posts\/17836\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media\/17829"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/media?parent=17836"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/categories?post=17836"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/fr\/wp-json\/wp\/v2\/tags?post=17836"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}