我有以下配置。
IIS 中的一些网站有一个虚拟目录。此虚拟目录配置为 webdav,可完全正常运行,没有任何问题。
该虚拟目录具有以下目录结构:
\webdav
-dir1 (ok)
-dir2 (ok)
-dir3 (ok)
-dir4 (ok)
-dir5 (virtual directory)
-dir1 (ok)
-dir1 (ok)
-dir2 (ok)
-dir3 (ok)
-dir4 (ok)
-dir5 (HTTP Error 500)
-dir2 (ok)
-dir3 (ok)
除了 dir5 之外,其他任何目录都可以毫无问题地访问。如果我尝试访问此目录,则会收到 HTTP 错误 500。以下是 IIS 日志文件包含的内容:
2013-01-08 21:17:03 W3SVC2 WEB XXX.XX.XXX.XXX PROPFIND /WebDav/dir5/dir1/dir5 - 443 - XXX.XX.XXX.XXX HTTP/1.1 Microsoft-WebDAV-MiniRedir/6.1.7601 - - www.example.com 500 50 183 1397 204 78
我无法解释为什么我会在这个目录中得到这个错误。
答案1
该sc-win32-status
代码(HTTP 返回代码后面的值)的值50
表示“不支持该请求”。这可能是目录上的请求过滤问题。
如果您启用了请求过滤功能,请打开 IIS 管理器,导航到目录并从功能窗格中选择“请求过滤”。如果有任何限制,您可以通过从过滤中排除 webDAV 请求来解决问题:
appcmd set config /section:requestfiltering /fileExtensions.applyToWebDAV:false