2009-12-17 184 views
0

我有出动出版物指我的网站,但他们使用了错误的地址...他们没有提供页面名称我们的客户......它看起来像这样:扩展名的页面请求

mywebsite .ORG /资源/工具包/桥接

时,它应该是

mywebsite.org/Resources/toolkits/bridging/default.aspx

有没有办法告诉ASP.NET默认为这个default.aspx当它看到这种请求甚至更好时,有IIS 7如何轻松处理? 这个网站是活的,所以我想避免不必介绍代码,如果可能的话。

回答

4

在IIS的网站属性的“文档”选项卡中,您可以指定默认文档。如果您在该机器上使用.Net2.0或更高版本,则应该已经设置Default.aspx ....

4

默认情况下,Default.aspx并不是奇怪的,它被设置为IIS安装中的默认文档;在IIS 7中,该设置位于“HTTP功能”下,名为“默认文档”。将default.aspx添加到该列表中,您应该可以。

如果不是,则需要添加404处理程序,该程序会在看到该URL时重定向。

5

按照其他建议,这可以在IIS配置做了使用IIS管理工具,您的网站。

还有然而,另一种选择 - 你可以添加一个节中的实际ASP.NET应用程序的web.config,让您从您的应用程序重写IIS配置:

<system.webServer> 
    <defaultDocument> 
     <files> 
      <clear /> 
      <!-- Specify each of your files by order of preference here --> 
      <add value="Default.aspx" /> 
      <add value="Index.aspx" /> 
      <add value="MyOtherPage.aspx" /> 
     </files> 
    </defaultDocument> 
</system.webServer> 

的警告但是,当IIS管理员无法弄清楚为什么服务器配置没有按照他配置的方式工作时,它可能会有点迟钝。仅仅因为可以做某件事情并不总是正确的。

最后,为防万一您无法访问IIS服务器或您的IIS管理员有理由不将Default.aspx添加到IIS配置中的默认文档列表中,并且无论出于何种原因,您都不希望覆盖在你的web.config文件的IIS配置,则最快,最简单的方法是简单地创建一个名为Default.asp的包含该目录中的文件:

<% Response.Redirect("default.aspx") %> 

的Default.asp 是默认的文件中在IIS上列出。该代码将自动将呼叫重定向到正确的页面。这种方法的缺点在于性能受到影响 - 每次有人直接或以其他方式调用default.asp时,重定向都需要发生,这不是免费的。

+0

本,为了它的价值,我认为你错了关于那里的警告。国际海事组织,你的解决方案是* spot-on *,不需要警告。这种类型的东西应该在应用程序的配置中......正是你提出的。 – 2009-12-17 18:33:57

+0

我倾向于认为这不一定遵循IIS管理员最不感到惊讶的原则。我同意这应该是特定于应用程序的东西,而不是Web服务器。所以也许这个*不应该在Web服务器中设置(也不能设置)?只是把它放在那里作为一个便笺我想... – BobTheBuilder 2009-12-17 18:53:56