Custom 404 & MaintenanceDocs

Documentatie Custom 404 & Maintenance

Installatiestappen en een volledige naslag van elke instelling, met concrete voorbeelden — hetzelfde detailniveau waarmee onze support klanten helpt.

Weergeven als Markdown

Voor en na

Dezelfde winkel, dezelfde URL: sleep de schuifregelaar om de standaardpagina van Magento te vergelijken met de pagina die de module maakt.

404-pagina

Aangepaste 404-pagina met winkellogo, groot 404-getal, titel “Page not found”, zoekvak en knop terug naar de homepage Standaard 404-pagina van het Hyvä-thema met header, footer en de algemene tekst “Whoops, our bad...”
Standaard Magento Met de module

Links: de standaard 404-pagina van het thema (hier Hyvä), met header, footer en algemene tekst. Rechts: dezelfde URL met de module — schermvullend, winkellogo, grote 404, zoeken in de catalogus en een knop terug naar de homepage.

Onderhoudspagina

Onderhoudspagina in de huisstijl van de winkel: logo, titel “We’ll be back soon” en notitie “We will be back online at 14:00 (CET)” Standaard onderhoudspagina van Magento: “Service Temporarily Unavailable” in zwarte tekst op een witte achtergrond
Standaard Magento Met de module

Links: de standaard onderhoudspagina van Magento, “Service Temporarily Unavailable” in zwart op wit. Rechts: de pagina in de huisstijl van de winkel met logo, bericht en de uitgelichte notitie “We will be back online at 14:00 (CET)”, geleverd met HTTP 503.

Installatie

Vereisten

Magento 2.4.x. PHP 8.1–8.5. Compatibel met zowel het standaardthema Luma als het Hyvä-thema. Vereist de gratis module codingrow/module-core, die automatisch wordt geïnstalleerd. Geen sleutel in te voeren: de module activeert zich automatisch op je domein.

Installatiestappen

  1. Vraag de module aan op de productpagina met alleen je e-mailadres: je ontvangt de Composer-gegevens per e-mail (ze staan ook in je klantomgeving). Sla ze op vanuit de hoofdmap van je Magento-project:
    composer config http-basic.repo.codingrow.com <username> <password>
  2. composer config repositories.codingrow composer https://repo.codingrow.com
  3. composer require codingrow/module-custom-404-maintenance
  4. bin/magento module:enable Codingrow_Custom404Maintenance
  5. bin/magento setup:upgrade — in production-modus ook setup:di:compile, setup:static-content:deploy en cache:flush.
  6. Er hoeft geen sleutel te worden geplakt: de module activeert zich automatisch op je domein, ga direct verder met de configuratie hieronder.

setup:upgrade installeert ook de skin van de onderhoudspagina in pub/errors. Lukt dat niet (bestandsrechten), voer dan eenmalig bin/magento codingrow:c404m:deploy uit als eigenaar van de Magento-bestanden.

Configuratie

Open Admin → Stores → Configuration → Codingrow Extensions → Custom 404 & Maintenance. Elk veld kan worden ingesteld op niveau Default, Website en Store View: gebruik de Scope-keuze linksboven om per taal andere teksten of een ander ontwerp in te stellen.

De modulekop bovenaan de configuratiepagina, met de geïnstalleerde versie.
De modulekop bovenaan de configuratiepagina, met de geïnstalleerde versie.
Groep License: status Active en een leeg veld License Key — de module is gratis, er is geen sleutel nodig.
Groep License: status Active en een leeg veld License Key — de module is gratis, er is geen sleutel nodig.
InstellingWat het doetOpmerkingen
404 Page
Enable custom 404 pageVervangt de 404-pagina van Magento.Ja/Nee.
Show large "404" numberGroot gekleurd getal boven de titel.Gebruikt de accentkleur.
Title / MessageDe teksten van de pagina.Leeg = vertaalde standaardtekst. Eenvoudige HTML toegestaan in het bericht (b, strong, i, em, a, br, p, ul, ol, li, span).
Show search boxZoeken in de catalogus van de winkel.
"Back to home" button labelTekst van de knop.Leeg = standaardtekst.
Maintenance Page
Installation statusGeeft aan of de skin in pub/errors is geïnstalleerd.Moet Installed tonen (zie Onderhoudspagina).
Enable custom maintenance pageToont jouw pagina zolang de onderhoudsmodus actief is.Ja/Nee per store view.
Title / MessageDe teksten van de pagina.Zoals bij de 404-pagina.
Highlighted noteKorte melding in de accentkleur.Bijv. "Om 14:00 weer online".
Auto-reload page every (seconds)Herlaadt de pagina van de bezoeker automatisch.0 = nooit; 60 = elke minuut.
Design
Logo / Logo max widthWinkellogo, eigen logo of geen.Winkellogo = het logo uit Content → Design → Configuration.
BackgroundEffen kleur, verloop van twee kleuren of schermvullende afbeelding.Verduistering van de afbeelding van 0 tot 90%.
Content boxGeen, licht of donker.
Font / Title size / AlignmentTypografie van beide pagina's.
Kleuren voor tekst, accent en knoptekstKleuren, elk met kleurkiezer.Accent = 404-getal, links, knoppen, melding.

De-installatie

Herstel de standaard onderhoudspagina van Magento voordat je de module verwijdert:

bin/magento codingrow:c404m:deploy --uninstall
composer remove codingrow/module-custom-404-maintenance
bin/magento setup:upgrade

Verwijder je de module zonder --uninstall, dan blijft de onderhoudspagina de laatst gegenereerde versie tonen tot de skin wordt verwijderd. Wil je zonder de-installatie gewoon terug naar de standaardpagina's, zet dan Enable custom 404 page en/of Enable custom maintenance page op No.

Gebruikershandleiding

404-pagina

Bestaat een adres niet, dan toont de winkel in plaats van de CMS-pagina “404 Not Found” een schermvullende pagina met logo, optionele grote “404”, titel, bericht, optioneel zoekveld en een knop “Terug naar home”. Het antwoord behoudt de status HTTP 404, bevat noindex en wordt nooit gecachet, zodat zoekmachines de pagina niet indexeren.

Statische bestanden vallen hierbuiten. 404's voor ontbrekende afbeeldingen, CSS- of JS-bestanden worden afgehandeld door de webserver, niet door Magento, en houden dus het antwoord van de server.
De groep 404 Page (Not Found): inschakelen, groot “404”-getal, titel, bericht, zoekvak en label van de knop “Back to home”. Lege velden gebruiken de vertaalde standaardteksten.
De groep 404 Page (Not Found): inschakelen, groot “404”-getal, titel, bericht, zoekvak en label van de knop “Back to home”. Lege velden gebruiken de vertaalde standaardteksten.
De resulterende 404-pagina op desktop: logo, 404, titel, bericht, zoekvak en knop terug naar de homepage.
De resulterende 404-pagina op desktop: logo, 404, titel, bericht, zoekvak en knop terug naar de homepage.
Dezelfde 404-pagina op een smartphone.
Dezelfde 404-pagina op een smartphone.

Onderhoudspagina

Zolang de onderhoudsmodus actief is (bin/magento maintenance:enable) draait Magento niet en antwoordt pub/errors/503.php. Daarom doet de module het volgende:

  1. installeert een skin in pub/errors/codingrow_c404m/ en activeert die in pub/errors/local.xml (een bestaande local.xml wordt bewaard als local.xml.codingrow_c404m.bak);
  2. genereert vooraf de HTML van de pagina voor elke store view;
  3. kiest tijdens onderhoud de store view van het verzoek (MAGE_RUN_CODE van de webserver → domein/pad → winkelcookie → browsertaal → standaardwinkel) en serveert die pagina met HTTP 503 en Retry-After. Is de pagina voor die store view niet ingeschakeld, dan verschijnt de standaardpagina van Magento.

De HTML wordt automatisch opnieuw gegenereerd wanneer je de sectie opslaat, wanneer het logo wijzigt in Content → Design → Configuration en bij elke maintenance:enable. IP-adressen die met --ip zijn uitgesloten, blijven de winkel zien.

Toont de installatiestatus “Not installed yet”? De webserver mag niet schrijven in pub/errors (normaal en veilig op beveiligde servers). Voer eenmalig bin/magento codingrow:c404m:deploy uit als eigenaar van de Magento-bestanden en herlaad de configuratiepagina: die moet Installed tonen.
De groep Maintenance Page: Installation status Installed met de datum waarop de pagina het laatst is gegenereerd, inschakelen, titel, bericht, uitgelichte notitie en automatisch herladen.
De groep Maintenance Page: Installation status Installed met de datum waarop de pagina het laatst is gegenereerd, inschakelen, titel, bericht, uitgelichte notitie en automatisch herladen.
De onderhoudspagina tijdens bin/magento maintenance:enable, met de uitgelichte notitie “We will be back online at 14:00 (CET)”.
De onderhoudspagina tijdens bin/magento maintenance:enable, met de uitgelichte notitie “We will be back online at 14:00 (CET)”.
Dezelfde onderhoudspagina op een smartphone.
Dezelfde onderhoudspagina op een smartphone.

Ontwerp

Het ontwerp geldt voor beide pagina's: logo (winkellogo, eigen logo — jpg, png, gif, svg, webp — of geen) met maximale breedte; achtergrond als effen kleur, verloop van twee kleuren of schermvullende afbeelding met 0–90% verduistering; inhoudsvak geen, licht of donker; lettertype, titelgrootte en uitlijning; tekstkleur, accentkleur (404-getal, links, knoppen, melding) en knoptekstkleur, elk met kleurkiezer. De pagina is zelfstandige HTML/CSS en gebruikt het thema niet, dus ziet er op Hyvä en Luma identiek uit.

De groep Design (both pages) met een verloopachtergrond: logo en maximale logobreedte, achtergrond- en verloopkleur, inhoudsvak, lettertype, titelgrootte, uitlijning, tekst-, accent- en knoptekstkleur.
De groep Design (both pages) met een verloopachtergrond: logo en maximale logobreedte, achtergrond- en verloopkleur, inhoudsvak, lettertype, titelgrootte, uitlijning, tekst-, accent- en knoptekstkleur.
Background ingesteld op Image: miniatuur van de geüploade afbeelding, optie Delete Image en Image darkening (%), hier 15.
Background ingesteld op Image: miniatuur van de geüploade afbeelding, optie Delete Image en Image darkening (%), hier 15.
Resultaat met achtergrondafbeelding, 15% verduistering, licht inhoudsvak en blauwe accentkleur.
Resultaat met achtergrondafbeelding, 15% verduistering, licht inhoudsvak en blauwe accentkleur.
Een andere combinatie: geen inhoudsvak, schreeflettertype, links uitgelijnd en terracotta als accentkleur.
Een andere combinatie: geen inhoudsvak, schreeflettertype, links uitgelijnd en terracotta als accentkleur.

Live voorbeeld

De groep Live Preview toont de 404-pagina of de onderhoudspagina, als Desktop of Mobile, bijgewerkt terwijl je de velden bewerkt en met de gekozen scope — nog vóór het opslaan. Net geüploade afbeeldingen (eigen logo, achtergrondafbeelding) verschijnen na het opslaan in het voorbeeld.

Live voorbeeld met niet-opgeslagen wijzigingen: donkere achtergrond, paars accent en de eigen titel “Oops! This page took a day off”.
Live voorbeeld met niet-opgeslagen wijzigingen: donkere achtergrond, paars accent en de eigen titel “Oops! This page took a day off”.
De tabbladen 404 page / Maintenance page en Desktop / Mobile: hier de 404-pagina op Desktop.
De tabbladen 404 page / Maintenance page en Desktop / Mobile: hier de 404-pagina op Desktop.
De onderhoudspagina in het tabblad Mobile.
De onderhoudspagina in het tabblad Mobile.
Na het opslaan verschijnt ook de geüploade achtergrondafbeelding in het voorbeeld.
Na het opslaan verschijnt ook de geüploade achtergrondafbeelding in het voorbeeld.
Voorbeeld van de onderhoudspagina met dezelfde achtergrondafbeelding.
Voorbeeld van de onderhoudspagina met dezelfde achtergrondafbeelding.

CLI-commando

bin/magento codingrow:c404m:deploy installeert of werkt de onderhoudsskin in pub/errors bij en genereert de pagina's voor alle store views opnieuw. Je hebt het alleen nodig als de webserver niet in pub/errors mag schrijven; de skinbestanden worden aangemaakt met rechten 644/755. --uninstall herstelt local.xml en verwijdert de skin, waarna de standaard onderhoudspagina van Magento terugkeert.

codingrow:c404m:deploy genereert de pagina opnieuw voor de store views; na maintenance:enable zien bezoekers de eigen pagina (HTTP 503); --uninstall zet de standaardpagina van Magento terug voordat je de module verwijdert.
codingrow:c404m:deploy genereert de pagina opnieuw voor de store views; na maintenance:enable zien bezoekers de eigen pagina (HTTP 503); --uninstall zet de standaardpagina van Magento terug voordat je de module verwijdert.

Probleemoplossing

  • Ik zie nog de oude 404-pagina: controleer of Enable custom 404 page op Yes staat in de scope van de store view die je bekijkt, leeg de cache (System → Cache Management) en test een adres dat echt niet bestaat.
  • Tijdens onderhoud zie ik de standaardpagina van Magento: Installation status moet Installed zijn, de pagina moet voor die store view zijn ingeschakeld en je IP-adres mag niet met --ip zijn uitgesloten. Voer daarna bin/magento codingrow:c404m:deploy uit.
  • Verkeerde taal tijdens onderhoud: stel de teksten in binnen de scope van de juiste store view; delen meerdere store views hetzelfde adres, dan beslissen de winkelcookie en daarna de browsertaal. Voer daarna bin/magento codingrow:c404m:deploy uit.
  • Het logo wordt niet getoond: bij Store logo komt het uit Content → Design → Configuration → Header → Logo Image (of het logo van het thema); kies Custom logo om er een te uploaden en verhoog Logo max width als het te klein oogt.
  • De achtergrondafbeelding ontbreekt in het voorbeeld: geüploade afbeeldingen verschijnen na het opslaan; controleer of Background op Image staat.

Licentie

Custom 404 & Maintenance is gratis en je hoeft geen sleutel in te voeren: na de installatie activeert de module zich automatisch op je domein. Hij voert een lichte onlinecontrole uit bij codingrow.com, waarbij alleen het winkeldomein, het product en de geïnstalleerde versie worden verstuurd (geen gegevens van je klanten), en onthoudt het laatste antwoord, zodat een tijdelijk netwerkprobleem hem niet uitschakelt. Het formulier op de productpagina stuurt je alleen de inloggegevens voor de Composer-repository van Codingrow, waarmee je de module en de updates downloadt.

Als de module ooit betaald wordt: domeinen die hem al hebben geactiveerd blijven voor altijd gratis op alle versies die tot die datum zijn uitgebracht — zonder domeinwijziging en zonder supportverzoek. Het Magento-log vermeldt de laatste versie die je gratis kunt installeren; nieuwere versies zouden een licentie vereisen.