【发布时间】:2009-01-07 19:43:48
【问题描述】:
我的默认文档位于子文件夹中,而不是根目录中,如何在 asp.net 2.0 网站中将其设为默认。
尝试将 iis7 默认文档设置为“/pages/default.aspx” '~/pages/default.aspx' 但它不起作用。
【问题讨论】:
-
如果发现如果你尝试指定一个默认的文档,比如“子文件夹/子文件夹/文件”,内容会被找到并提供,但是所有的链接都被破坏了,因为网络浏览器仍然认为它在原始父文件夹。正确执行此操作的唯一方法是使用 HTTP 重定向,通过 JavaScript 或通过 Web 服务器响应。 IMO 触发重定向响应的最佳方式是通过 web.config 中的位置标记,该标记仅针对根目录中的默认文档触发重定向,而不是为整个文件夹打开重定向。
-
只需将根文件夹中的 default.aspx 文件留空,然后在您的 web.config 文件中,使用“位置”标签进行特定于该页面的重定向:
<configuration><location path="default.aspx"><system.webServer><httpRedirect enabled="true" destination="pages/default.aspx" exactDestination="true" httpResponseStatus="Found" /></system.webServer></location></configuration>跨度>