--vv gave me this:

[00D1905B:00D2B15B dbg] Exception while handling request POST /upload: vibe.http.common.HTTPStatusException@../../.dub/packages/vibe-d-0.7.22/source/vibe/http/server.d(1426): Request size too big
[00D1905B:00D2B15B dbg] ----------------
[00D1905B:00D2B15B dbg] ./chat(bool vibe.http.common.enforceHTTP!(bool).enforceHTTP(bool, vibe.http.status.HTTPStatus, lazy immutable(char)[], immutable(char)[], int)+0x3f) [0x6d999f]
[00D1905B:00D2B15B dbg] ./chat(bool vibe.http.common.enforceBadRequest!(bool).enforceBadRequest(bool, lazy immutable(char)[], immutable(char)[], int)+0x50) [0x6d9930]
[00D1905B:00D2B15B dbg] ./chat(bool vibe.http.server.handleRequest(vibe.core.stream.Stream, vibe.core.net.TCPConnection, vibe.http.server.HTTPServerListener, ref vibe.http.server.HTTPServerSettings, ref bool)+0xb96) [0x7b9b1a]
[00D1905B:00D2B15B dbg] ./chat(void vibe.http.server.handleHTTPConnection(vibe.core.net.TCPConnection, vibe.http.server.HTTPServerListener)+0x19c) [0x7b8e80]
[00D1905B:00D2B15B dbg] ./chat(void vibe.http.server.listenHTTPPlain(vibe.http.server.HTTPServerSettings).doListen(vibe.http.server.HTTPServerSettings, ulong, immutable(char)[])._lambda4(vibe.core.net.TCPConnection)+0x62) [0x7b8882]
[00D1905B:00D2B15B dbg] ./chat(void vibe.core.drivers.libevent2
tcp.ClientTask.execute()+0x4d4) [0x796a94]
[00D1905B:00D2B15B dbg] ./chat(void vibe.core.core.makeTaskFuncInfo!(void delegate()).makeTaskFuncInfo(ref void delegate()).callDelegate(vibe.core.core.TaskFuncInfo*)+0x72) [0x6ffd46]
[00D1905B:00D2B15B dbg] ./chat(void vibe.core.core.CoreTask.run()+0x18a) [0x6fc066]
[00D1905B:00D2B15B dbg] ./chat(void core.thread.Fiber.run()+0x2a) [0x8b26e2]
[00D1905B:00D2B15B dbg] ./chat(fiber_entryPoint+0x61) [0x8b25f5]

And in fact uploading smaller files works. I was trying to upload ~4MB files, but this should still work.