我想知道如何在 ASP.NET Web 应用程序中进行转发 URL 重写。例如创建 URL 的子域类型而不在 IIS 创建子域。
例如,如果用户类型
http://subdomain.example.com
在进行转发 URL 重写后我会得到这个
http://www.example.com/name=subdomain
当我有一个 ASP.NET 网站时,有什么方法可以做到这一点?
我想知道如何在 ASP.NET Web 应用程序中进行转发 URL 重写。例如创建 URL 的子域类型而不在 IIS 创建子域。
例如,如果用户类型
http://subdomain.example.com
在进行转发 URL 重写后我会得到这个
http://www.example.com/name=subdomain
当我有一个 ASP.NET 网站时,有什么方法可以做到这一点?
创建一个 CS 类让我们说“MainClassName”并在 cs 文件中编写如下代码
public class MainClassName
{
public static void SubClassName(RouteCollection routes)
{
routes.MapPageRoute(
"RouteName", // Route name
"{name}-{some extentions}.aspx", // Route URL (subdomain-example.aspx)
"~/home.aspx",// Web page to handle route
);
}
}
请在 globle.asmx 页面中编写以下代码
void Application_Start(object sender, EventArgs e)
{
MainClassName.SubClassName(RouteTable.Routes);
}
当你使用 subdomain-example.aspx 这个 url 时,它会重定向到 home.aspx?name=SubDomain
创建一个 ASP.NET 网站并将其部署为 subdomain.example.com
该站点有一页,default.asp,其中包含单行 <% Response.Redirect("www.example.com/name=subdomain") %>
编写另一个网站并将其部署在 www.example.com
它可以在没有复杂且容易出错的 URL 重写逻辑的情况下工作