Global 301 redirection from domain to www.domain

2019-01-23 19:41发布

could i use the begin request of Global.asax to redirect everything,

from mydomain.domain to www.mydomain.domain?

If this one is true, how can i do that?

2条回答
闹够了就滚
2楼-- · 2019-01-23 20:06
protected void Application_PreRequestHandlerExecute(Object sender, EventArgs e)
{
  string currentUrl = HttpContext.Current.Request.Path.ToLower();
  if(currentUrl.StartsWith("http://mydomain"))
  {
    Response.Status = "301 Moved Permanently";
    Response.AddHeader("Location", currentUrl.Replace("http://mydomain", "http://www.mydomain"));
    Response.End();
  }
}
查看更多
smile是对你的礼貌
3楼-- · 2019-01-23 20:07

A couple of minor changes to Jan's answer got it working for me:

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

Changes were to use the BeginRequest event and to set currentUrl to HttpContext.Current.Request.Url instead of HttpContext.Current.Request.Path. See:

http://www.mycsharpcorner.com/Post.aspx?postID=40

查看更多
登录 后发表回答