Fout 404 op alle pagina's vanwege probleem met het opslaan van inhoud
Dit artikel verstrekt een moeilijke situatie voor Adobe Commerce op-gebouw en Adobe Commerce op de kwestie van de wolkeninfrastructuur waar u een 404 fout wanneer het toegang tot van om het even welke storefront pagina of Commerce Admin krijgt.
Beschrijving description
Betrokken producten en versies
- Adobe Commerce op locatie 2.2.x, 2.3.x
- Adobe Commerce op cloud-infrastructuur 2.2.x, 2.3.x
Probleem
Nota : Dit artikel is niet op de situatie van toepassing waarin u een fout 404 wanneer het proberen om de het opvoeren update te bekijken. Als u in die kwestie loopt, te openen gelieve a steunkaartje .
De toegang tot van om het even welke storefront pagina of Admin resulteert in de 404 fout (de "Wiops, onze slechte…"pagina) na het uitvoeren van verrichtingen met geplande updates voor de activa van de opslaginhoud gebruikend Inhoud het Opvoeren (updates voor de activa van de opslaginhoud die gebruikend de Magento_Staging module worden gepland). U hebt bijvoorbeeld een product met een geplande update verwijderd of de einddatum voor de geplande update verwijderd.
Een opslaginhoudselement bevat:
- Product
- Categorie
- Catalogusprijsregel
- Regel voor winkelprijs
- CMS-pagina
- CMS Block
- Widget
Sommige scenario's worden besproken in de hieronder sectie van de Oorzaak.
Oorzaak
De flag -tabel in de database (DB) bevat ongeldige koppelingen naar de staging_update -tabel.
Het probleem heeft te maken met het opslaan van inhoud. Hieronder volgen twee specifieke scenario's. Houd er rekening mee dat er wellicht meer situaties zijn die de kwestie veroorzaken.
Scenario 1 : Het schrappen van een activa van de opslaginhoud die:
- heeft een update gepland met Inhoud het Staging
- de update heeft een einddatum (de vervaldatum waarna het bijgewerkte element terugkeert naar de vorige versie)
- de einddatum van de update in het verleden ligt
Het is mogelijk dat de uitgave niet optreedt als een verwijderd element geen einddatum heeft voor de geplande update.
Scenario 2: het verwijderen van de einddatum/de tijd van een geplande update.
Identificeer als uw kwestie verwant is
Voer de volgende DB-query uit om te bepalen of het probleem dat u ondervindt het probleem is dat in dit artikel wordt beschreven:
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';
Als de vraag een lijst terugkeert waar update_exists waarde "0"is, dan bestaat een ongeldige verbinding aan de staging_update lijst in uw gegevensbestand, en de stappen die in de sectie van de Oplossing worden beschreven zullen helpen de kwestie oplossen. Hieronder ziet u een voorbeeld van het queryresultaat met update_exists -waarde gelijk aan "0":
flag_vesionupdate_exists156042732101 row in set (0.00 sec)
Als de query een tabel retourneert waarvan de update_exists -waarde "1" of een leeg resultaat is, betekent dit dat uw uitgave niet gerelateerd is aan het uitvoeren van testupdates. Hieronder ziet u een voorbeeld van het queryresultaat met update_exists -waarde gelijk aan "1":
flag_vesionupdate_exists15604273211 row in set (0.00 sec)
In dit geval, zou u naar de Plaats neer Troubleshooter voor het oplossen van problemenideeën kunnen verwijzen.
Resolutie resolution
- Voer de volgende query uit om de ongeldige koppeling naar de tabel
staging_updatete verwijderen:DELETE FROM flag WHERE flag_code = 'staging';. - Wacht tot de uitsnijdtaak is uitgevoerd (kan maximaal vijf minuten worden uitgevoerd als de functie correct is ingesteld) of voer de taak handmatig uit als u de uitsnijdbewerking niet hebt ingesteld.
Het probleem moet direct worden opgelost nadat de ongeldige koppeling is hersteld. Als het probleem voortduurt, voorlegt een steunkaartje .
Gerelateerde lezing
Beste praktijken voor het wijzigen van gegevensbestandlijsten in het Playbook van de Implementatie van Commerce.
.