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

时间:2011-02-27 22:06:09

标签: 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。这里有什么想法吗?

2 个答案:

答案 0 :(得分:5)

您可以在后面的Default.aspx代码中添加类似的内容(在Page_Load方法中):

if (Request.Url.LocalPath == "/")
{
    Response.Redirect("~/Default.aspx");
}

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

答案 1 :(得分:5)

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