如何强制使用default.aspx而不是www.domain.com

Tim*_* J. 4 asp.net redirect

好.我有一个荒谬的问题.我正在尝试使用URL重写从www.domain.com重定向到www.domain.com/default.aspx.

我想通过将default.aspx设置为默认文档,它会自动将用户放在那里.但出于某种原因,它仍然出现在www.domain.com上.

我希望它访问www.domain.com/default.aspx的原因是,当它只是www.domain.com时,页面上的登录控件似乎不想工作.但是当然如果我输入www.domain.com/default.aspx,那么登录工作正常.如果它是www.domain.com,登录控件似乎根本不发布.无论如何,我试图避免解决为什么登录控制没有触发,只要有人试图访问www.domain.com,就强迫它登陆default.aspx.我正在使用IIS7.这里有什么想法?

Mat*_*ser 5

你可以在后面的Default.aspx代码中添加这样的东西(在你的Page_Load方法中):

if (Request.Url.LocalPath == "/")
{
    Response.Redirect("~/Default.aspx");
}
Run Code Online (Sandbox Code Playgroud)

请注意,默认文档设置通常允许该页面显示在www.domain.com/ www.domain.com/default.aspx下(它不会为您重定向).


Tim*_* J. 5

anwer与ASP.NET 4中的重大变化有关.答案是action=""在无扩展的根URL时表单操作是空的.但如果在同一页面上,但在网址(blahblah.com/default.aspx)中有页面名称,则操作会被填充.对我来说,简单的修复就是放置Me.Form.Action = "Default.aspx"主页的页面加载.问题已解决.