2012-12-25 45 views
0

如何設置可選的URL所許域在一個Asp.net MVC項目這樣的設置域名:Asp.net MVC域路由或選購的MVC URL

  • http://domain.com/Controller/Action?id -----> www.example .COM
  • domain.com/Controller/Action?id2 -----> www.sample.net

在我們希望每一個URL來單獨域名映射在1個MVC項目的另一個詞。

有必要說,在Stackoverflow之前有一個問題已經被問到了一些變化。並且在我之前也詢問過official asp.net site。爲了澄清這個問題,我轉載了問題以獲得很好的答案。這個問題之前也從Mr. k.Scott Allen提問,所以他建議我在MVC中閱讀IRouteConstrain這個話題。

無論如何,Global.asax文件中映射路徑中所需的配置對我而言並不明顯。

,我已經收集到現在的信息是:

所有的
  1. 首先,考慮一下我們已經配置所需的DNS選項來處理請求連接到相關的權威DNS服務器。

  2. 現在,我們需要通過配置MapRoutes對Global.asax文件做一些更改。

請通過執行上述示例回答這個問題。謝謝了很多。

回答

0

一個簡單的和外部的方法是使用DNS重定向像波紋管:

  • www.example.com ----重定向到----> www.domain.com/Controller/Action/id

可以在授權(本地)dns服務器上執行。請注意,我們必須在URL中使用可能的字符來存儲在dns RR中。這可以通過更改操作中的標識符或使用IIS中的Url重寫方法來解決。 Url Rewrite允許我們有一些映射,因爲優化搜索引擎優化的網址和縮短像子域的主題。但是,由於在現實中沒有使用子域名,因此我們不能在如下的dns中使用URL別名:

  • www.domain.com/Controller/Action?id=optional ---- map to - > www.domain.com/optional
  • www.domain.com/optional不等於optional.domain.com 所以我們不能用這個別名:
  • www.domain.com/optional ---域別名---> www.example.com

最後,在global.asax或C#或VB文件(如Route,IRoute等)中可用的映射技術...可用於內部映射並設置MVC路由引擎來表示不同的Url信息,但不能爲域進行別名。