diff --git a/server/upload.go b/server/upload.go index 3ba279d..373ab20 100644 --- a/server/upload.go +++ b/server/upload.go @@ -94,6 +94,13 @@ func handleUpload(w http.ResponseWriter, r *http.Request) { // MaxBytesReader closes the underlying io.Reader on its Close() is called defer src.Close() + err = os.MkdirAll(filepath.Base(path), 0775) + if err != nil { + slog.ErrorContext(r.Context(), "Creating Folder", "err", err) + http.Error(w, "Creating Folder: "+err.Error(), http.StatusInternalServerError) + return + } + out, err := os.Create(path) if err != nil { slog.ErrorContext(r.Context(), "Creating File", "err", err)