/ / Como redirecionar beta / * para / *? - asp.net-mvc, asp.net-mvc-3, iis, iis-7, web-config

Como redirecionar beta / * para / *? - asp.net-mvc, asp.net-mvc-3, iis, iis-7, web-config

Tenho site em beta privado e agora preciso redirecionar de beta / * para / *. Como isso pode ser feito no asp.net MVC?

obrigado * = tudo

Respostas:

2 para resposta № 1

Uma maneira é configurar uma rota curinga que tomará qualquer rota com a versão beta e a enviará para uma ação que redirecionará você para a URL correta:

routes.MapRoute(
"Beta",  // Route name
"beta/{*url}", // URL with parameters
new { controller = "Beta", action = "Index", url= UrlParameter.Optional }
);

Em seguida, no controlador Beta, faça o redirecionamento:

public ActionResult Index(string url)
{
return Redirect("/" + url);
}

1 para resposta № 2

Provavelmente é melhor ter a reescrita tratado pelo IIS para voce. O aplicativo não deve estar "ciente" se estiver no modo beta ou não.


0 para resposta № 3

Você poderia fazer isso definindo uma nova rota e usando um IRouteHandler para lidar com o redirecionamento.

Veja o blog de Phil Haack sobre isso: http://haacked.com/archive/2008/12/15/redirect-routes-and-other-fun-with-routing-and-lambdas.aspx