这相当简单,并且将按照用户被重定向到移动站点的相同方式完成。在 global.asax.cs 中实现 Application_PreRequestHandlerExecute
如果它们符合您决定的任何标准,请响应。重定向它们。我会在将要留在一个站点或下一个站点上的任何人身上存储一个 cookie,这样他们就不会在查看非 beta 站点的过程中被错误地重定向。这也不能处理人们不使用 cookie 的情况。
这是伪代码,所以它可能不是 100% 正确的
protected void Application_PreRequestHandlerExecute(object sender, EventArgs
e)
{
if(Request.Cookies["BetaResult"] == null)
{
var cookie = new HttpCookie("BetaResult");
cookie.Expires = DateTime.Now.AddDays(1d);
if(whatever logic to redirect to beta)
{
cookie["BetaResult"] = "Beta";
Response.Cookies.Add(cookie);
Response.Redirect("your beta site");
}
else
{
cookie["BetaResult"] = "Main";
Response.Cookies.Add(cookie);
}
}
else
{
//if cookie value is beta, redirect to beta site, they 'are a chosen one'
}
}