默认文档不尝试iis 8.5中的所有文件
我有一个网站,其中包含IIS 8.5 Windows 2012 R2上默认文档的默认设置。默认文档不尝试iis 8.5中的所有文件
<system.webServer>
<defaultDocument enabled="true">
<files>
<add value="Default.aspx" />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="index.html" />
<add value="iisstart.htm" />
</files>
</defaultDocument>
</system.webServer>
当我浏览到一个URL没有文件名(mysite.com/Content/)IIS将只尝试的Default.aspx,并在列表中(的index.html)没有其他文件。 IIS尝试加载default.aspx,我得到了404。奇怪的是,该目录中没有default.aspx文件,并且index.html确实存在。如果我直接浏览到index.html页面显示正确。根据Microsoft documentation on default document它应该尝试列表中的下一个文件,直到找到一个存在的文件。
我明确地添加一个web.config文件到子目录与
<defaultDocument enabled="true">
<files>
<clear />
<add value="index.html" />
</files>
</defaultDocument>
和IIS仍试图使用的Default.aspx。有没有人遇到过这个?你有什么建议,为什么这不按记录工作?
- 尝试删除/禁用旧的URL重写模块? (暂时)
- 如果您要求验证,请确保登录页面存在。
(其他建议从上面复制,这我已经包括,万一有人 其他读取这个问题)
- 检查在源代码中的任何路由。
- 检查可能导致重定向或拦截调用的任何特殊模块或处理程序。
如果你想使用index.html作为默认页面。您需要点击iis网站并点击默认文档,将index.html添加为您的默认文档。 –
如果您禁用默认文档但已启用目录浏览,则IIS在从浏览器到达根目录的请求时返回目录列表。如果禁用默认文档和目录浏览,则IIS向浏览器发送“HTTP 404文件不存在”错误。
因此,请在IIS中启用默认文档选项并重置IIS。
如果您想使用index.html作为默认页面。您需要点击iis默认网站之后,您可以点击默认文档。现在!您可以添加索引作为默认页面。
正如您从原始问题
使默认文档指令工作的一种方法是: 转到IIS /应用程序池 将“管理管道模式”更改为经典模式而不是集成模式。 这对我有用。
您是否在重置设置后尝试重置IIS? –
你有没有设置路由? – Ewan
是否安装了任何特殊模块/处理程序? – haim770