Erreur 404 sur toutes les pages en raison d’un problème d’évaluation du contenu

Cet article fournit un correctif pour le problème d’Adobe Commerce On-Premise et d’Adobe Commerce sur l’infrastructure cloud où vous obtenez une erreur 404 lors de l’accès à une page de storefront ou à l’administrateur Commerce.

Description description

Produits et versions concernés

  • Adobe Commerce on-premise 2.2.x, 2.3.x
  • Adobe Commerce sur les infrastructures cloud 2.2.x, 2.3.x

Problème

Remarque : cet article ne s’applique pas à la situation dans laquelle vous obtenez une erreur 404 lors de la tentative de prévisualisation de la mise à jour de l’évaluation. Si vous rencontrez ce problème, ouvrez un ticket d’assistance support.

L’accès à une page de storefront ou à Admin entraîne l’erreur 404 (la page « Oups, notre méchant… ») après l’exécution d’opérations avec des mises à jour planifiées pour les ressources de contenu de magasin à l’aide de Évaluation du contenu (mises à jour pour les ressources de contenu de magasin planifiées à l’aide du module Magento_Staging). Par exemple, vous avez peut-être supprimé un produit avec une mise à jour planifiée ou supprimé la date de fin de la mise à jour planifiée.

Une ressource de contenu de magasin comprend les éléments suivants :

  • Produit
  • Catégorie
  • Règle de prix de catalogue
  • Règle de prix du panier
  • Page CMS
  • Bloc CMS
  • Widget

Certains scénarios sont abordés dans la section Cause ci-dessous.

Cause

La table flag de la base de données (DB) contient des liens non valides vers la table staging_update.

Le problème est lié à l’évaluation du contenu. Vous trouverez ci-dessous deux scénarios particuliers ; notez qu’il peut y avoir d’autres situations qui déclenchent le problème.

Scénario 1 : suppression d’une ressource de contenu de magasin qui :

  • a une mise à jour planifiée avec l’évaluation de contenu
  • la mise à jour comporte une date de fin (c’est-à-dire la date d’expiration après laquelle la ressource mise à jour revient à sa version précédente)
  • la date de fin de la mise à jour est passée

Dans le même temps, le problème peut ne pas se produire si une ressource supprimée ne dispose pas d’une date de fin pour la mise à jour planifiée.

Scénario 2 : suppression de la date/l’heure de fin d’une mise à jour planifiée.

Déterminer si votre problème est lié

Pour déterminer si le problème que vous rencontrez est celui décrit dans cet article, exécutez la requête de base de données suivante :

SELECT f.flag_data >'$.current_version' as flag_version, (su.id IS NOT NULL) as update_exists
   -> FROM flag f
   -> LEFT JOIN staging_update su
   -> ON su.id = f.flag_data >'$.current_version'
   -> WHERE flag_code = 'staging';

Si la requête renvoie une table où update_exists valeur est « 0 », un lien non valide vers la table staging_update existe dans votre base de données et les étapes décrites dans la section Solution aideront à résoudre le problème. Voici un exemple de résultat de la requête avec update_exists valeur égale à « 0 » :

flag_vesion
update_exists
1560427321
0

1 row in set (0.00 sec)

Si la requête renvoie une table où update_exists valeur est « 1 » ou un résultat vide, cela signifie que votre problème n’est pas lié aux mises à jour d’évaluation. Voici un exemple de résultat de la requête avec update_exists valeur égale à « 1 » :

flag_vesion
update_exists
1560427321
1

1 row in set (0.00 sec)

Dans ce cas, vous pouvez vous reporter au dépanneur de site en panne pour obtenir des idées de dépannage.

Résolution resolution

  1. Exécutez la requête suivante pour supprimer le lien non valide vers la table staging_update : DELETE FROM flag WHERE flag_code = 'staging';.
  2. Attendez que la tâche cron s’exécute (s’exécute en cinq minutes maximum si elle est configurée correctement) ou exécutez-la manuellement si vous n’avez pas la configuration cron.

Le problème doit être résolu immédiatement après la correction du lien non valide. Si le problème persiste, envoyez un ticket d’assistance.

Lecture connexe

Bonnes pratiques relatives à la modification des tables de base de données dans le manuel Commerce Implementation Playbook .

.

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f