Asp.net mvc 为什么我的重定向不起作用。。。?

Asp.net mvc 为什么我的重定向不起作用。。。?,asp.net-mvc,redirect,Asp.net Mvc,Redirect,我正在尝试从我的非www域重定向到我的www域,如下所示: protected void Application_BeginRequest(object sender, EventArgs e) { if (HttpContext.Current.Request.Url.ToString().Contains("http://mydomain.com")) { HttpContext.Current.

我正在尝试从我的非
www
域重定向到我的
www
域,如下所示:

protected void Application_BeginRequest(object sender, EventArgs e)
        {
            if (HttpContext.Current.Request.Url.ToString().Contains("http://mydomain.com"))
            {
                HttpContext.Current.Response.Status = "301 Moved Permanently";
                HttpContext.Current.Response.AddHeader("Location", "http://www.mydomain.com");
            }
        }
由于某些原因,重定向没有完成…(好的,我知道这可以通过定义
CNAME
来完成,但我只是想知道为什么这不起作用

我想这是个小问题……但我看不到。

用这个来验证。可能你需要对下面的代码稍加修改

protected void Application_BeginRequest(object sender, EventArgs e)
{
    if (HttpContext.Current.Request.Url.ToString().Contains("http://mydomain.com"))
    {
        HttpContext.Current.Response.Status = "301 Moved Permanently";
        HttpContext.Current.Response.AddHeader("Location",
               Request.Url.ToString().ToLower().Replace(
                 "http://mydomain.com",
                 "http://www.mydomain.com"));
    }
}

什么不起作用?在fiddler中是什么样子的?您是否在调试模式下仔细检查了您的代码,以查看系统是否进入了
if
语句?@StriplingWarrior我没有进行调试,因为我只能在该域所在的宿主端上载时对其进行测试……我猜它现在甚至进入了if条件。您必须尝试一些日志记录或响应。write.Thank Mark…仍然无法工作…使用该工具进行测试时,内容如下:
Object·moved(CR)(LF)Object·moved·to·(CR)(LF)(CR)(LF)