2011-11-13 25 views
0

我工作的網站分散在多個子域。從主站點我必須創建指向sudomains的url。我怎樣才能做到這一點。asp.net mvc如何創建子域的網址

例如,我的主要網站是www.mysite.com 我需要創建一個指向blog.mysite.com/userId/Name的URL,它將指向HomeController和Index方法以及用戶標識和名稱。

此外,我應該如何處理本地機器上的URL以及生產機器上的URL。

幫助將不勝感激

更新我的問題在這裏。

什麼

@Html.ActionLink("MyLink","Index","Profile","","www.test.com",null,null,null) 

做。

它創建一個鏈接,但帶有端口號。如果有反正我可以避免它。

問候

成員Parminder

+0

你想讓這些網站真正擁有自己的應用嗎?或者你想讓它像他們一樣出現? (即他們可以共享緩存,會話等?)。讓它們像他們一樣出現,可能相當容易 - 可以用區域來完成。 –

+0

是的,這些網站將完全不同。將有他們自己的應用程序,控制器,行動和一切。 – Parminder

+0

贊同@Saintedlama的迴應。似乎這個問題是真正獨立於mvc。就像你使用任何IIS託管的站點一樣 - 你將不得不在IIS中單獨設置每個站點。我不知道你有多少網站正在創建 - 但這可能會讓我有點痛苦。有了區域,每個「網站」可以擁有自己的控制器和操作 - 但他們將共享會話,緩存等。 –

回答

2

當你的子域將舉辦與控制器和操作自己的應用程序,我建議使用好老的HTML超級鏈接創建鏈接:

<a href="blog.mysite.com/userId/Name">Your Blog</a> 

原因:因爲你不想結合你的不相交的應用程序,ASP.NET MVC沒有關於某些其他應用程序中使用的路線的線索(並且不應該有線索)。爲了構建鏈接,您可以向HtmlHelper添加擴展方法以避免拼寫錯誤和URL路徑編碼怪癖。

+0

在一天結束時,這肯定是在那裏。但我在看如果Asp.net mvc有什麼提供。 – Parminder

+0

謝謝喇嘛。我很感激。 – Parminder

0

關於端口號 - 你真的需要在IIS中設置一個虛擬目錄來避免它。如果你的目標是有獨立的網站 - 你將不得不爲所有子網站設置虛擬目錄。我想知道你是否真的需要建立完全獨立的網站?子網站將有多廣泛? 「根」網站和「子網站」之間是否有任何關聯?

出於好奇---有多少個子網站?如果你能做到這一點而不會暴露太多 - 這裏的最終目標是什麼?

+0

謝謝ek_ny,你可以發佈很多類型的內容(圖片,博客,照片),然後可以在不同的子域訪問。 – Parminder

+0

Parminder--我不確定你需要單獨的應用程序 - 我認爲你可以逃脫一個應用程序 - 順便說一句 - 子域不應該成爲開發中的問題,因爲你永遠不會對它進行硬編碼。 –

+0

ek_ny,它的漫長故事。是的,我需要單獨設置網站,我認爲維護破損部分比編寫整個應用程序容易,因爲它的日復一日變得更大。我正在構建類似於socialengine.net的東西,人們可以在其中添加新模塊。在iis上進行設置。 – Parminder