ASP.NET MVC動態次層網域及DNS泛解析配置

來源:互聯網
上載者:User

動態次層網域的實現:

應用情境:目前產品要實現SaaS功能,因為工作需要實現次層網域:www.{CompanyUrl}.xxx.com

假設產品主網域名稱入口為:www.xxx.com

當a公司租戶登入時:www.a.xxx.com

當b公司租戶登入時: www.b.xxx.com

首先想到的是對Url的重寫:(網上有關於UrlRewrite的實現。在ASP.NET中這也是常用的手法。)

Route簡介:ASP.NET路由可以不用映射到網站特定檔案的URL.由於該 URL 不必映射到檔案,因此可以使用對使用者操作進行描述因而更易於被使用者理解的 URL。.NET Framework 3.5 SP1已經包含了ASP.NET Routing引擎。現在微軟已經在ASP.NET WebForms 4.0中增加了對Routing引擎更好的支援,它使用運算式構造器進行雙向Routing。
MVC 應用程式中的典型 URL 模式——來自MSDN

MVC 應用程式中用於路由的 URL 模式通常包括 {controller} 和 {action} 預留位置。

當收到請求時,會將其路由到 UrlRoutingModule 對象,然後路由到 MvcHandler HTTP 處理常式。 MvcHandler HTTP 處理常式通過向 URL 中的控制器值添加尾碼“Controller”以確定將處理請求的控制器的類型名稱,來確定要調用的控制器。URL 中的操作值確定要調用的操作方法。

MVC項目中添加路由,Global.asax 檔案預設的MVC 路由的代碼。

預設配置:

public static void RegisterRoutes(RouteCollection routes){    routes.IgnoreRoute("{resource}.axd/{*pathInfo}");        routes.MapRoute(        "Default", // Route name        "{controller}/{action}/{id}", // URL with parameters        new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults    );    }protected void Application_Start(){    AreaRegistration.RegisterAllAreas();        RegisterGlobalFilters(GlobalFilters.Filters);    RegisterRoutes(RouteTable.Routes);}

涉及類參考

說明
Route 表示 Web Form或 MVC 應用程式中的路由。
RouteBase 用作表示 ASP.NET 路由的所有類的基類。
RouteTable 儲存應用程式的路由。
RouteData 包含所請求路由的值。
RequestContext 包含有關對應於路由的 HTTP 要求的資訊。
RouteValueDictionary 提供用於儲存路由 Constraints、Defaults 和 DataTokens 對象的方法。
VirtualPathData 提供用於從路由資訊產生 URL 的方法。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.