raise upload size cap to ~1.86 GB and nginx timeouts to 1200s

Raise RequestSizeLimit/MultipartBodyLengthLimit on upload+replace-audio,
MaxUploadBytes in BatchUpload/BatchEdit, and DefaultResponseTimeoutSeconds to
1200s. Add client_max_body_size 2000m and proxy_read/send_timeout 1200s to the
nginx manager/public confs.
This commit is contained in:
daniel-c-harvey
2026-06-19 15:02:49 -04:00
parent 297805b5a8
commit 3b9ca700c9
7 changed files with 37 additions and 15 deletions
+11
View File
@@ -3,6 +3,10 @@ server {
listen [::]:80;
server_name __DOMAIN_APP__;
# Allow audio file uploads up to ~1.86 GB (matches the per-request ceiling on api/track/upload
# and api/track/{id}/replace-audio). nginx default is 1 MB, which would 413 any large upload.
client_max_body_size 2000m;
location / {
proxy_pass http://localhost:__PORT_MANAGER__;
proxy_http_version 1.1;
@@ -15,5 +19,12 @@ server {
# WebSocket support (Blazor InteractiveServer SignalR circuits)
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
# Large audio uploads stream over the SignalR WebSocket circuit for several minutes.
# nginx's 60 s default would drop the connection mid-transfer and silently kill the
# Blazor circuit — the app never sees an error, so nothing is logged. 1200 s matches
# the Upload:ResponseTimeoutSeconds budget already configured in the application.
proxy_read_timeout 1200s;
proxy_send_timeout 1200s;
}
}
+6
View File
@@ -15,5 +15,11 @@ server {
# WebSocket support (Blazor Server SignalR circuits + WASM interop)
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
# Blazor Server SignalR circuits can be long-lived. Raise timeouts above the 60 s
# nginx default so idle-but-active circuits (e.g. during audio streaming) are not
# silently dropped.
proxy_read_timeout 1200s;
proxy_send_timeout 1200s;
}
}