From 2b809867858b95500ef31ca3a61bce0217f1055d Mon Sep 17 00:00:00 2001 From: Xavier Date: Wed, 26 Aug 2026 18:11:36 +0200 Subject: [PATCH] =?UTF-8?q?D=C3=A9ploiement=20serveur=20pour=20test=20de?= =?UTF-8?q?=20g=C3=A9n=C3=A9ration=20multim=C3=A9dia=20(HuggingFace=20+=20?= =?UTF-8?q?Cloudflare)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index 5fc382a..ea39af8 100644 --- a/main.py +++ b/main.py @@ -52,12 +52,19 @@ app.mount("/Logo", StaticFiles(directory="Logo"), name="Logo") # (J'ai supprimé l'ancien montage /Media capricieux de Docker) # --- ROUTE DÉDIÉE POUR L'AFFICHAGE ET TÉLÉCHARGEMENT DES MÉDIAS --- -@rt('/Media/{filename}') +@rt('/Media/{filename:path}') def get(filename: str): chemin = os.path.join(dossier_media, filename) if os.path.exists(chemin): - return FileResponse(chemin, media_type="image/png") - return HTMLResponse("Image introuvable sur le disque", status_code=404) + try: + # Lecture "brute" pour contourner le bug des disques RAID sous Docker + with open(chemin, "rb") as f: + donnees_image = f.read() + return Response(content=donnees_image, media_type="image/png") + except Exception as e: + return HTMLResponse(f"Erreur de lecture sur le disque : {str(e)}", status_code=500) + + return HTMLResponse(f"Image introuvable physiquement : {chemin}", status_code=404) # --- ROUTES D'AUTHENTIFICATION --- @rt('/login')