我已经设置了一个 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
Run Code Online (Sandbox Code Playgroud)
所以看起来有两个 401(拒绝访问),然后是一个 404。
有趣的是,可以访问和下载同一目录中的.jar文件。
是否需要在某处配置 IIS 以允许下载其他文件类型?
可能发生的情况是您的服务器不知道 .war 是一种需要下载而不是执行的文件。然后,它会通过您允许的 Web 服务扩展来运行任何匹配项。如果没有找到,即使该文件确实存在,它也会抛出 404 错误。
如果您为 application/octet-stream 类型的 war 文件设置 MIME 类型,则应该可以解决您的问题。
归档时间: |
|
查看次数: |
14946 次 |
最近记录: |