Kurz gesagt: Der erste Export mit Simply Static Pro lieferte 1.819 Dateien und 81 Megabyte.
Bis hierher war KISP eine Werkstatt: ein WordPress, das nur ich sehen kann. Heute passiert das, worauf alles hinausläuft. Aus den Seiten, die ich dort geschrieben habe, entstehen fertige Dateien, wie sie später im Internet liegen. Dafür gibt es ein Werkzeug namens Simply Static Pro. Es besucht jede Seite meiner Werkstatt, schreibt sie als einfache Datei ab und legt alles in einen Ordner. Dieses Abschreiben heißt Export, der Ordner heißt Staging, also eine Bühne hinter dem Vorhang, auf der noch niemand zuschaut.
Zugang mit eigenem Passwort
Simply Static brauchte einen Zugang, denn meine Werkstatt hat eine Tür mit Passwort. Statt mein eigenes Passwort zu hinterlegen, habe ich einen eigenen Besucher angelegt, der nur für den Export da ist. Sollte er jemals in falsche Hände geraten, lässt er sich mit einer Zeile löschen.
Erster Export
Dann kam der erste Lauf: 1.819 Dateien, 81 Megabyte. Das ist viel für eine Seite aus Text. Beim Nachsehen zeigte sich, woher das Gewicht stammt. Zu 70 Megabyte tragen Werkzeuge bei, die WordPress nur für den Redaktionsbereich braucht. Auf der fertigen Seite lädt gerade einmal eine Handvoll davon. Dazu kamen Autorenseiten, die ich gar nicht haben wollte, und die Ordner der Plugins.
Hinweis zur Sperre für Suchmaschinen
Gut zu wissen, bevor die Seite ins Internet geht: Die Sperre für Suchmaschinen ist im Export angekommen, die Links zeigen auf die künftige Adresse thekeepitsimpleproject.org, und die Dateien für KI-Assistenten (llms.txt) und Suchmaschinen (Sitemap) liegen bereit. Auch zwei Kleinigkeiten sind aufgefallen. Ein unsichtbares Zeichen am Anfang der llms.txt, das BOM, und Yoast-Kommentare im Quelltext.
Zweiter Export
Der zweite Export brachte 1.782 Dateien und 80 Megabyte. Autorenseiten und Plugin-Ordner waren weg, wp-includes mit 1.638 Dateien geblieben. Warum das so war und wie die Seite am Ende auf 62 Dateien und 2,4 Megabyte schrumpfte, erzähle ich im nächsten Beitrag.
Wie die fertigen Dateien zu All-Inkl gelangen, folgt in einer späteren Etappe.
Zeig mir, wie es geht: Simply Static Pro per WP-CLI installieren
- Die ZIP-Datei war größer als die Upload-Grenze von WordPress. Sie liegt kurz in
/data/terruhn.it/kisp/wordpress/, das im WP-CLI-Container als/var/www/htmleingebunden ist:
chown 33:33 /data/terruhn.it/kisp/wordpress/<datei>.zip
cd /data/terruhn.it/kisp
docker compose -p kisp run --rm wpcli wp plugin install simply-static --activate
docker compose -p kisp run --rm wpcli wp plugin install /var/www/html/<datei>.zip --activate
rm /data/terruhn.it/kisp/wordpress/<datei>.zip
- Versionen: Simply Static 3.8.16, Simply Static Pro 2.6.11. Die Pro-Version setzt die freie Version voraus.
- Der Lizenzschlüssel steht im Passwortmanager und nicht im Projektordner.
Zeig mir, wie es geht: eigener Zugang für den Export
- In Caddy eine zweite Zeile im Block
basic_auth @geschuetzt, Benutzersimplystaticexportmit eigenem Passwort (caddy hash-password). - Test:
curl -sI -u simplystaticexport:'<PASSWORT>' https://thekeepitsimpleproject.org/ | head -1
Erwartet HTTP/2 200.
- In Simply Static unter Allgemein den Basic-Auth-Benutzer und das Passwort eintragen.
- Exportziel: Bereitstellung → Lokales Verzeichnis
/var/www/staging(auf dem Cube/data/terruhn.it/kisp/staging, Eigentümerwww-data). - Ziel-URL: Absolute URLs mit
https://thekeepitsimpleproject.org. - Zusätzliche URLs:
/llms.txtund/sitemap_index.xmlder Arbeitsinstanz, weil Yoast sie zur Laufzeit erzeugt.
Zeig mir, wie es geht: den Export verschlanken
- Erweitertes Crawling, aktive Crawler: ausgeschaltet wurden Autoren-URLs, Includes-Verzeichnis, Plugin-Assets, Vendor-Dateien und Konfigurationsdateien.
- Einschließen/Ausschließen:
/author/und/wp-content/plugins/. - Ergebnis nach dem zweiten Lauf: Autorenseiten und Plugin-Ordner sind weg,
wp-includesist mit 1.638 Dateien (60 MB JavaScript) geblieben. - Die Seiten verlinken aus
wp-includesnur zwei Dateien:js/dist/script-modules/block-library/navigation/view.min.jsundjs/dist/script-modules/interactivity/index.min.js. - Prüfbefehl:
grep -rhoE '(src|href)="[^"]*wp-includes[^"]*"' --include=index.html . | sed 's/.*="//;s/"$//;s/?.*//' | sort -u
- Welche Einstellung
wp-includesweiter einbezog und wie der Ordner aus dem Export verschwand, steht im nächsten Beitrag. - Das BOM in der
llms.txt(ef bb bf) und die Yoast-Kommentare räume ich in einem späteren Schritt weg.