我想將abc.com/yyy重定向到xxx.abc.com,我可以知道我如何在域管理器中實現此目的?將子文件夾URL重定向到子域
實際上,這是一個在Azure中託管的.net MVC項目,我可能知道這是在域管理器中完成的嗎?
謝謝。
我想將abc.com/yyy重定向到xxx.abc.com,我可以知道我如何在域管理器中實現此目的?將子文件夾URL重定向到子域
實際上,這是一個在Azure中託管的.net MVC項目,我可能知道這是在域管理器中完成的嗎?
謝謝。
有你需要爲了使這項工作做了幾件事情:
這也可以通過global.asax以編程方式完成。 即時通訊使用這種重定向從
到
下面是代碼來做到這一點。
public class SubdomainRoute : RouteBase
{
public override RouteData GetRouteData(HttpContextBase httpContext)
{
RouteData returnValue = null;
var url = httpContext.Request.Headers["HOST"];
var index = url.IndexOf(".");
if (index < 0)
return returnValue;
string subDomain = url.Substring(0, index);
switch (subDomain.ToLowerInvariant())
{
case "www":
returnValue = new RouteData(this, new MvcRouteHandler());
returnValue.Values.Add("controller", "Redirect");
returnValue.Values.Add("action", "RedirectToRoot");
break;
/*case "live":
returnValue = new RouteData(this, new MvcRouteHandler());
returnValue.Values.Add("controller", "Database");
returnValue.Values.Add("action", "Index");
returnValue.Values.Add("liveMode", true); // set parameter to 'true';
break;*/
default: // not a supported domain, return null;
break;
}
return returnValue;
}
/// <summary>
/// required override
/// </summary>
/// <param name="requestContext"></param>
/// <param name="values"></param>
/// <returns></returns>
public override VirtualPathData GetVirtualPath(RequestContext requestContext, RouteValueDictionary values)
{
return null;
}
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.Add(new SubdomainRoute());
}
當它發現了子域您的搜索,它會重定向到一個動作。確保此操作將Redirect
返回到您想要的任何路徑。
您是否在網站或雲服務託管? – Jamie
Azure,雲服務 – user1352798