Используйте комбинацию маршрутизации и модуля перезаписи IIS.Возможно, вам придется настроить его так, чтобы он немного подходил для конечного слеша (если вы этого хотите или нет).У меня также есть все мои имена страниц в нижнем регистре.Использование этого почти гарантирует постоянное перенаправление 301 для вашей страницы default.aspx и соответствует лучшим рекомендациям SEO.
в Global.asax:
<%@ Import Namespace="System.Web.Routing" %>
<%@ Application Language="C#" %>
<script runat="server">
void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.MapPageRoute("default", string.Empty, "~/default.aspx");
}
и затем в вашемweb.config:
<rewrite>
<rules>
<rule name="Default Document" stopProcessing="true">
<match url="(.*?)/?default\.aspx$" ignoreCase="true" />
<action type="Redirect" url="{R:1}/" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
Если вы не знакомы с маршрутизацией, вы получите доступ к домашней странице по следующей ссылке:
<asp:HyperLink ID="homeLink" runat="server" NavigateUrl="<%$RouteUrl:RouteName=default %>">HOME</asp:HyperLink>