IIS:可以浏览文件,但点击下载时收到 404

IIS:可以浏览文件,但点击下载时收到 404

我已设置 IIS 6 服务器作为文件服务器。但对于某些文件,客户端会收到 404 错误。

为了诊断问题,我启用了目录浏览功能。我可以直接浏览到其中一个有问题的文件,单击该文件,然后出现 404 错误。

该网站配置了基本身份验证。我验证了相关用户在文件系统级别对所需文件具有读取权限。

该文件访问尝试的 IIS 日志条目为:

2009-10-26 23:23:38 W3SVC882002786 192.168.1.10 GET /path/to/myfile.war-0.2.45.M.war - 8889 - 72.162.134.92 Mozilla/5.0+(Windows;+U;+Windows+NT+6.0;+en-US)+AppleWebKit/532.0+(KHTML,+like+Gecko)+Chrome/3.0.195.27+Safari/532.0 401 2 2148074254
2009-10-26 23:23:38 W3SVC882002786 192.168.1.10 GET /path/to/myfile.war-0.2.45.M.war - 8889 - 72.162.134.92 Mozilla/5.0+(Windows;+U;+Windows+NT+6.0;+en-US)+AppleWebKit/532.0+(KHTML,+like+Gecko)+Chrome/3.0.195.27+Safari/532.0 401 1 0
2009-10-26 23:23:38 W3SVC882002786 192.168.1.10 GET /path/to/myfile.war-0.2.45.M.war - 8889 MYDOMAIN\myuser 72.162.134.92 Mozilla/5.0+(Windows;+U;+Windows+NT+6.0;+en-US)+AppleWebKit/532.0+(KHTML,+like+Gecko)+Chrome/3.0.195.27+Safari/532.0 404 3 50

因此看起来好像有两个 401(拒绝访问),后面跟着一个 404。

有趣的是,。罐同一目录下的文件均可访问和下载。

我是否需要在某处配置 IIS 以允许下载其他文件类型?

答案1

可能发生的情况是,您的服务器不知道 .war 是一种需要下载而不是执行的文件类型。然后,它会通过您允许的 Web 服务扩展来查找任何匹配项。如果找不到,它会抛出 404 错误,即使该文件确实存在。

如果您为 application/octet-stream 类型的 war 文件设置了 MIME 类型,那么应该可以解决您的问题。

答案2

看起来您的文件大小超过 2GB,如果我没记错的话,这远远超出了 IIS 允许的大小。您需要编辑 metabase.xml 文件来更改该值。我相信您需要的设置是 AspBufferingLimit,如果您查看它,您应该会看到它设置为 4194304。将其设置为 2560000000,看看您是否可以下载该文件。

相关内容