Error 404 en todas las páginas debido a un problema con el ensayo de contenido

Este artículo proporciona una corrección para el problema de infraestructura de Adobe Commerce local y Adobe Commerce en la nube en el que se obtiene un error 404 al acceder a cualquier página de tienda o al Commerce Admin.

Productos y versiones afectados

  • Adobe Commerce local 2.2.x, 2.3.x
  • Adobe Commerce en cloud Infrastructure 2.2.x, 2.3.x

Problema

NOTE
Este artículo no se aplica a la situación en la que recibes un error 404 al intentar previsualizar la actualización de ensayo. Si encuentra ese problema, abra un ticket de asistencia.

El acceso a cualquier página de la tienda o al administrador provoca el error 404 (la página "¡Uy!, nuestra página es incorrecta…") después de realizar operaciones con actualizaciones programadas para los recursos de contenido de la tienda mediante Ensayo de contenido (actualizaciones para los recursos de contenido de la tienda programados mediante el módulo Magento_Ensayo). Por ejemplo, es posible que haya eliminado un producto con una actualización programada o que haya eliminado la fecha de finalización de la actualización programada.

Un recurso de contenido de tienda incluye:

  • Product
  • Categoría
  • Regla de precio de catálogo
  • Regla de precio del carro
  • Página de CMS
  • Bloque de CMS
  • Widget

Algunos escenarios se analizan en la sección Causa a continuación.

Causa

La tabla flag de la base de datos (DB) contiene vínculos no válidos a la tabla staging_update.

El problema está relacionado con el Ensayo de contenido. A continuación se presentan dos escenarios particulares; tenga en cuenta que podría haber más situaciones que pongan en déclencheur el problema.

Escenario 1: Se está eliminando un recurso de contenido de almacén que:

  • tiene una actualización programada con el ensayo de contenido
  • la actualización tiene una fecha de finalización (es decir, la fecha de caducidad después de la cual el recurso actualizado vuelve a su versión anterior)
  • la fecha de finalización de la actualización es anterior

Al mismo tiempo, es posible que el problema no se produzca si un recurso eliminado no tiene fecha de finalización para la actualización programada.

Escenario 2: al eliminar la fecha/hora de finalización de una actualización programada.

Identificar si el problema está relacionado

Para identificar si el problema que está experimentando es el descrito en este artículo, ejecute la siguiente consulta de base de datos:

   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 consulta devuelve una tabla donde el valor update_exists es "0", existe un vínculo no válido a la tabla staging_update en la base de datos y los pasos descritos en la sección de soluciones ayudarán a resolver el problema. A continuación se muestra un ejemplo del resultado de la consulta con un valor de update_exists igual a "0":

update_exists_0.png

Si la consulta devuelve una tabla en la que el valor update_exists es "1" o un resultado vacío, significa que el problema no está relacionado con las actualizaciones de ensayo. A continuación se muestra un ejemplo del resultado de la consulta con un valor de update_exists igual a "1":

actualizaciones_existen_1.png

En este caso, puede consultar Solucionador de problemas de caída del sitio para obtener ideas sobre la solución de problemas.

Solución

  1. Ejecute la siguiente consulta para eliminar el vínculo no válido a la tabla staging_update:

    code language-sql
    DELETE FROM flag WHERE flag_code = 'staging';
    
  2. Espere a que se ejecute el trabajo de cron (se ejecuta en cinco minutos si está configurado correctamente) o ejecútelo manualmente si no ha configurado cron.

El problema debe resolverse directamente después de corregir el vínculo no válido. Si el problema persiste, envíe un vale de soporte técnico.

Lectura relacionada

Prácticas recomendadas para modificar tablas de base de datos en el libro de estrategias de implementación de Commerce

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a