我想将 HTTP 请求中的流量从一台服务器重新路由到 ASP.NET 网站中的另一台服务器。我一直在考虑尝试使用 http 模块或 http 处理程序来执行此操作。这些对我的案例来说是可行的选择还是有人有更好的建议?此应用程序使用 .NET 4.0 框架并托管在 IIS6 上。
问问题
253 次
1 回答
0
除了上面的评论,我还想提供一小段代码。您应该能够在 HTTPModule 中使用 Response.Redirect 执行此操作。我不是 100% 确定,但我相信 RewritePath 方法可能会在 IIS6 上引发平台不支持的异常。幸运的是,IIS6 绝对支持 Response.Redirect。
继续处理开始请求:
{
context.BeginRequest += new EventHandler(MyBeginRequestMethod);
}
然后在您的开始请求方法中:
HttpApplication application = (HttpApplication)sender;
HttpContext context = application.Context;
if(context.Request.FilePath.Contains("someresource"))
{
context.Response.Redirect("http://www.google.com");
}
显然,您将能够通过这种方式对内容进行更全面的查找和更完整的重定向。
于 2013-04-15T20:10:21.203 回答