Corrige le MIME type des fichiers .mjs (bug bloquant en prod)

nginx:alpine ne connaît pas l'extension .mjs par défaut et la servait en
application/octet-stream — le navigateur refusait d'exécuter les modules
ES (browser-image-compression.mjs, qrcode-generator.mjs), ce qui plantait
silencieusement TOUT le JS qui les importe : page upload invité bloquée
sur "Chargement...", générateur QR et carton imprimable cassés depuis
leur déploiement. Aucune erreur visible sans ouvrir la console navigateur.

Découvert suite à un vrai test d'upload de Kévin depuis son téléphone.
This commit is contained in:
2026-09-16 15:11:07 +02:00
parent 74718e42c9
commit 7c5a2d87b9
+11
View File
@@ -4,6 +4,17 @@ server {
root /usr/share/nginx/html;
index index.html;
# nginx:alpine ne connaît pas l'extension .mjs par défaut et la sert en
# application/octet-stream -> le navigateur refuse d'exécuter le module
# ES (import bloqué), ce qui fait planter silencieusement tout script
# qui l'importe (constaté en prod le 2026-09-16 : browser-image-
# compression.mjs importé par upload.js, page bloquée sur "Chargement...").
location ~ \.mjs$ {
types { text/javascript mjs; }
default_type text/javascript;
try_files $uri =404;
}
# /e/<slug> -> page upload invité, le slug est lu côté client via
# window.location.pathname (cf. src/e/upload.js)
location /e/ {