我需要将所有请求从一个域移到另一个域。我想要更改部分网址,例如subdomain.olddomain/url - > subdomain.newdomain/url。如何在asp.net中编写重定向应用程序?
我相信这是一块蛋糕和写Application_Begin要求为:
void Application_BeginRequest(object sender, EventArgs e)
{
string url = Request.Url.ToString().ToLower();
string from = ConfigurationSettings.AppSettings["from"];
if (url.IndexOf(from) >= 0)
{
url = url.Replace(from, ConfigurationSettings.AppSettings["to"]);
Response.Redirect(url);
}
else
{
if (url.IndexOf("error.aspx") < 0)
{
Response.Redirect("Error.aspx?url=" + Server.UrlEncode(url));
}
}
}
到目前为止,我忘了,这只是的BeginRequest启动时的文件实际存在。
任何想法,我怎么能在asp.net中做这样的重定向,而无需创建数百个旧页面?
好的,但你从哪里改写?这听起来像你将不得不将所有未命中映射到单个重定向页面。如果是这样,我不确定这是该工具的理想用法。 – 2010-08-05 21:12:46
“IIS URL重写2.0使Web管理员能够创建强大的规则” - 这是一个伟大的工具,但它花了很长时间才找到合适的设置 – st78 2010-08-05 21:38:31