如何解决为什么 IIS 10 默认文档不适用于静态文件?
我有一个 IIS 10 站点,我可以毫无问题地从根目录下载文档 index.html。但是,当我尝试使用默认文档功能下载相同的文件时,我得到状态代码 404.0,而且 IIS 似乎没有尝试将请求从 / 转换为 /index.html。
<defaultDocument enabled="true">
<files>
<clear />
<add value="index.html" />
</files>
</defaultDocument>
<handlers>
<add name="Static File" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="File" requireAccess="Script" />
<add name="DefaultDocument" path="*" verb="*" modules="DefaultDocumentModule" resourceType="File" />
</handlers>
解决方法
啊。发现问题。我的静态文件处理程序有 resourceType="File",所以只为显式命名的文件调用。应该是这样的:
<handlers>
<add name="Static File" path="*" verb="*" modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" resourceType="Either" requireAccess="Script" />
</handlers>
这似乎是默认文档工作所必需的。
使用来自IISM的GUI:
- 点击左侧“连接”树中的站点。
- 双击树右侧面板中的“处理程序映射”。
- 双击静态文件处理程序(如果它不存在,则添加它)。
- 点击“请求限制...”
- 在“映射”选项卡上,单击“仅当请求映射到时才调用处理程序:”然后单击“文件或文件夹”并确定返回。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。