feat(errorpage): render maintenance page as error page template #19

Merged
fabrice.kirchner merged 1 commit from feat/error-page into main 2026-09-18 09:00:45 +02:00

Änderung

  • Output-Format errorpage: Hugo rendert die Startseite ein zweites Mal nach /_error/. Das ist die Vorlage der Fehlerseite, die nginx in k3s-prod bei 502 bis 504 ausliefert.
  • layouts/partials/custom_body.html: Karte ganz oben mit Statuscode, Ursache, Host, URL, Request-ID, „Details kopieren“ und „Störung melden“ an info@casa-due-pur.de. nginx setzt die Werte per SSI ein.
  • assets/css/error-card.css, eingebunden über custom_head.html nur in der Fehlerfassung.
  • baseURL: /_maintenance/: Traefik leitet diesen Pfad auf allen Hosts an die Wartungsseite, damit CSS und Bilder auch unter dem Host der ausgefallenen Anwendung laden.
  • minify.tdewolff.html.keepComments, damit --minify die SSI-Anweisungen stehen lässt.
  • Titelbild nach assets/images/, damit das Theme es verarbeitet.

Reihenfolge

Erst mergen, wenn k3s-prod #429 ausgerollt ist, sonst fehlt die Route für /_maintenance/ und die Wartungsseite verliert ihr CSS.

Test

Lokal mit Hugo 0.166 gebaut: 7 SSI-Anweisungen in /_error/index.html, Karte nur in der Fehlerfassung, alle Verweise unter /_maintenance/, Anker #kontakt, #datenschutz, #impressum.

Der Verweis /cdn-cgi/l/email-protection im bestehenden Inhalt ist ein Überbleibsel von Cloudflare und führt schon heute ins Leere.

## Änderung - Output-Format `errorpage`: Hugo rendert die Startseite ein zweites Mal nach `/_error/`. Das ist die Vorlage der Fehlerseite, die nginx in k3s-prod bei 502 bis 504 ausliefert. - `layouts/partials/custom_body.html`: Karte ganz oben mit Statuscode, Ursache, Host, URL, Request-ID, „Details kopieren“ und „Störung melden“ an `info@casa-due-pur.de`. nginx setzt die Werte per SSI ein. - `assets/css/error-card.css`, eingebunden über `custom_head.html` nur in der Fehlerfassung. - `baseURL: /_maintenance/`: Traefik leitet diesen Pfad auf allen Hosts an die Wartungsseite, damit CSS und Bilder auch unter dem Host der ausgefallenen Anwendung laden. - `minify.tdewolff.html.keepComments`, damit `--minify` die SSI-Anweisungen stehen lässt. - Titelbild nach `assets/images/`, damit das Theme es verarbeitet. ## Reihenfolge Erst mergen, wenn k3s-prod #429 ausgerollt ist, sonst fehlt die Route für `/_maintenance/` und die Wartungsseite verliert ihr CSS. ## Test Lokal mit Hugo 0.166 gebaut: 7 SSI-Anweisungen in `/_error/index.html`, Karte nur in der Fehlerfassung, alle Verweise unter `/_maintenance/`, Anker `#kontakt`, `#datenschutz`, `#impressum`. Der Verweis `/cdn-cgi/l/email-protection` im bestehenden Inhalt ist ein Überbleibsel von Cloudflare und führt schon heute ins Leere.
feat(errorpage): render maintenance page as error page template
All checks were successful
Reusable · Commit Lint / commitlint (push) Successful in 15s
Reusable · Commit Lint / commitlint (pull_request) Successful in 13s
e403ea806a
Render the home page a second time to /_error/ as template for the
Traefik error pages served by nginx in k3s-prod. A card at the top
shows status, cause, host, URL and request id, filled in by nginx via
SSI. baseURL moves to /_maintenance/, which Traefik routes to the
maintenance page on every host, so assets load under foreign hosts.
The cover image moves to assets so the theme processes it.
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
fabrice.kirchner/maintenance-page!19
No description provided.