From 5a65b5444ccea8cd0ac9bf953541d3cdc225a8d4 Mon Sep 17 00:00:00 2001 From: DeeCee03 Date: Wed, 7 Oct 2026 17:40:58 +0200 Subject: [PATCH] PostGrid: fester Port 4321, die Wurzel fuehrt zur Uebersicht Ist der Port belegt, bricht der Server mit einem Hinweis ab, statt auszuweichen. So stimmt der Link aus dem Marketing-Dashboard immer. Co-Authored-By: Claude Opus 5.5 --- serve.py | 19 +++++++++++++++++-- serve.sh | 2 +- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/serve.py b/serve.py index 500249e..766aa3a 100755 --- a/serve.py +++ b/serve.py @@ -118,6 +118,14 @@ class Handler(http.server.SimpleHTTPRequestHandler): def do_GET(self): """Vor der Dateiauslieferung nur die Bilderliste abfangen.""" zerlegt = urllib.parse.urlparse(self.path) + if zerlegt.path == "/": + # Die Wurzel fuehrt zur Uebersicht aller Projekte statt zur + # Dateiliste. So reicht ein Link auf http://127.0.0.1:4321/, + # zum Beispiel aus dem Marketing-Dashboard. + self.send_response(302) + self.send_header("Location", "/uebersicht.html") + self.end_headers() + return if zerlegt.path == "/bilder": self._liste_bilder() return @@ -367,7 +375,14 @@ class Server(socketserver.ThreadingTCPServer): if __name__ == "__main__": - print(f"Generator: http://127.0.0.1:{PORT}/post1.html") + # Der Port ist fest, damit Links von aussen (Marketing-Dashboard, + # Lesezeichen) immer stimmen. Ist er belegt, laeuft PostGrid meist schon. + try: + httpd = Server(("127.0.0.1", PORT), Handler) + except OSError: + print(f"Port {PORT} ist belegt. Laeuft PostGrid schon? Dann einfach http://127.0.0.1:{PORT}/ oeffnen.") + raise SystemExit(1) + print(f"PostGrid: http://127.0.0.1:{PORT}/") print(f"Speichert nach: {TARGET}") - with Server(("127.0.0.1", PORT), Handler) as httpd: + with httpd: httpd.serve_forever() diff --git a/serve.sh b/serve.sh index f0f6499..f6e4a76 100755 --- a/serve.sh +++ b/serve.sh @@ -1,3 +1,3 @@ #!/bin/sh -# Serve the generator on a free port, with the /save endpoint. +# Startet PostGrid immer auf dem festen Port 4321: http://127.0.0.1:4321/ cd "$(dirname "$0")" && exec python3 serve.py