From aa0ced47b083bdce3a1463525088f39e6be8fda0 Mon Sep 17 00:00:00 2001 From: Suyunjing <69945917+Suyunmeng@users.noreply.github.com> Date: Sat, 9 Aug 2025 13:57:09 +0800 Subject: [PATCH] fix(webdav): Handle HEAD requests for directories with appropriate headers (#1015) Implement handling of HEAD requests for directories by setting the correct Content-Type and Content-Length headers. --- server/webdav/webdav.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/webdav/webdav.go b/server/webdav/webdav.go index a4fbf205..b6f7cdac 100644 --- a/server/webdav/webdav.go +++ b/server/webdav/webdav.go @@ -233,6 +233,11 @@ func (h *Handler) handleGetHeadPost(w http.ResponseWriter, r *http.Request) (sta return http.StatusNotFound, err } if fi.IsDir() { + if r.Method == http.MethodHead { + w.Header().Set("Content-Type", "httpd/unix-directory") + w.Header().Set("Content-Length", "0") + return http.StatusOK, nil + } return http.StatusMethodNotAllowed, nil } // Let ServeContent determine the Content-Type header.