Passer au contenu principal
Version : 1.x

HOST151 : rejeu de cache partagé

Ce que cela signifie

Un cache placé devant la boutique rejoue les réponses d'API d'une personne à tout le monde.

Une couche de mise en cache sert des réponses d'API REST stockées sans vérifier qui les demande : l'application a envoyé deux sondes authentifiées différemment et a reçu les deux fois la réponse de la première sonde. Sur une boutique en production, cela signifie qu'un caissier pourrait voir les données d'un autre ; la connexion est donc bloquée jusqu'à ce que le cache exclue l'API de la boutique. Il s'agit d'un problème de la couche d'hébergement — WordPress lui-même répond toujours par utilisateur.

Vos données

Les données de cet appareil peuvent être à risque — n'effacez pas les données locales. Si le problème persiste, exportez les diagnostics et contactez le support WCPOS.

Dépannage

  1. Excluez les chemins de l'API REST de la boutique (/wp-json/ et /?rest_route=) de la mise en cache des pages — sur LiteSpeed, désactivez la mise en cache REST ou ajoutez une règle no-cache ; sur WP Engine, étendez l'exclusion WooCommerce à /wp-json/wcpos ; sur Sucuri, réglez le niveau de mise en cache pour respecter Cache-Control.
  2. L'API de la boutique envoie déjà Cache-Control: no-store et Vary: Authorization — la couche de cache les ignore ; orientez l'hébergeur vers ces en-têtes.
  3. Après avoir modifié les réglages du cache, purgez le cache avant de vous reconnecter.

Détails

Code
HOST151 (CACHE_SHARED_REPLAY)
Severity
error
Introduced in
WCPOS 1.10.0