fix: Video-Upload-Limit auf 100 MB anheben
40 MB war fuer ein reales, nicht web-optimiertes Hero-Video (57 MB) zu knapp. Ingress-Body-Size-Limit entsprechend mitgezogen. Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
1 parent
1df62f20c8
commit
6a815e85fe
2 files changed
+14
-12
No files matched your search
+5
-5
@@ -20,13 +20,13 @@ metadata:
|
|||||||
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
||||||
# ingress-nginx laesst ohne diese Annotation standardmaessig nur 1 MB pro
|
# ingress-nginx laesst ohne diese Annotation standardmaessig nur 1 MB pro
|
||||||
# Request durch — weit unter dem Bild- (8 MB, lib/uploads.ts
|
# Request durch — weit unter dem Bild- (8 MB, lib/uploads.ts
|
||||||
# MAX_UPLOAD_BYTES) und erst recht dem Video-Limit (40 MB, lib/uploads.ts
|
# MAX_UPLOAD_BYTES) und erst recht dem Video-Limit (100 MB, lib/uploads.ts
|
||||||
# MAX_UPLOAD_VIDEO_BYTES) der Admin-Uploads. Ohne diese Zeile bricht
|
# MAX_UPLOAD_VIDEO_BYTES) der Admin-Uploads. Ohne diese Zeile bricht
|
||||||
# nginx jeden Upload jenseits von 1 MB vor der App ab (Verbindungsabbruch
|
# nginx jeden Upload jenseits von 1 MB vor der App ab (Verbindungsabbruch
|
||||||
# ohne verwertbare Fehlermeldung im Browser) — 45m deckt das groessere der
|
# ohne verwertbare Fehlermeldung im Browser) — 110m deckt das groessere
|
||||||
# beiden Limits (40 MB) plus etwas Spielraum fuer den multipart/form-data-
|
# der beiden Limits (100 MB) plus etwas Spielraum fuer den
|
||||||
# Overhead ab.
|
# multipart/form-data-Overhead ab.
|
||||||
nginx.ingress.kubernetes.io/proxy-body-size: "45m"
|
nginx.ingress.kubernetes.io/proxy-body-size: "110m"
|
||||||
spec:
|
spec:
|
||||||
ingressClassName: nginx
|
ingressClassName: nginx
|
||||||
tls:
|
tls:
|
||||||
|
|||||||
+9
-7
@@ -33,14 +33,16 @@ export const UPLOAD_DIR = path.resolve(/*turbopackIgnore: true*/ process.env.UPL
|
|||||||
export const MAX_UPLOAD_BYTES = 8 * 1024 * 1024;
|
export const MAX_UPLOAD_BYTES = 8 * 1024 * 1024;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 40 MB: ein kurzes (wenige Sekunden), fuer Web komprimiertes Hero-Video
|
* 100 MB: deckt auch ein laengeres oder nicht web-optimiertes Hero-Video
|
||||||
* passt bequem darunter. Grosszuegiger als MAX_UPLOAD_BYTES (Bilder), weil
|
* (z.B. direkt von einer Kamera/einem Handy exportiert, oft 40-80 MB) ab.
|
||||||
* Video-Dateien inhaerent groesser sind — Videos werden aber (anders als
|
* Grosszuegiger als MAX_UPLOAD_BYTES (Bilder), weil Video-Dateien inhaerent
|
||||||
* Bilder) NICHT neu enkodiert (dafuer gibt es hier keine sharp-Entsprechung
|
* groesser sind — Videos werden aber (anders als Bilder) NICHT neu enkodiert
|
||||||
* ohne eine ffmpeg-Abhaengigkeit), die Groessengrenze ist daher die einzige
|
* (dafuer gibt es hier keine sharp-Entsprechung ohne eine ffmpeg-
|
||||||
* Bremse gegen uebermaessig grosse Uploads.
|
* Abhaengigkeit), die Groessengrenze ist daher die einzige Bremse gegen
|
||||||
|
* uebermaessig grosse Uploads. Muss zum "proxy-body-size" in
|
||||||
|
* k8s/06-ingress.yaml passen (dort grosszuegiger bemessen).
|
||||||
*/
|
*/
|
||||||
export const MAX_UPLOAD_VIDEO_BYTES = 40 * 1024 * 1024;
|
export const MAX_UPLOAD_VIDEO_BYTES = 100 * 1024 * 1024;
|
||||||
|
|
||||||
export type AllowedImageExtension = "jpg" | "png" | "webp" | "avif";
|
export type AllowedImageExtension = "jpg" | "png" | "webp" | "avif";
|
||||||
export type AllowedVideoExtension = "mp4" | "webm";
|
export type AllowedVideoExtension = "mp4" | "webm";
|
||||||
|
|||||||
Reference in new issue
Block a user