2010-10-10 132 views
6

考慮,我想在IIS中創建10個網站,他們每個人指向本地硬盤上的同一個網站,每一個運行相同的代碼,但在不同的子域。多個子域,但不同的數據庫相同ASP.NET網站?

subdomain1.domain.com,subdomain2.domain.com,...,subdomain10.domain.com

我怎麼能在我的web.config文件中添加多個連接字符串和每個連接字符串綁定到不同的子域?

我想這樣做,因爲每一個網站都會有不同的數據不同的數據庫。

回答

2

由於web.config文件是所有的網站常見的,可以爲每個子域添加多個連接字符串這樣。

<connectionStrings> 
     <add connectionString="" name="subdomain1"/> 
      <add connectionString="" name="subdomain2"/> 
</connectionStrings> 

然後你可以檢查使用

HttpContext.Current.Request.Url.AbsoluteUri 

當前的URL,然後使用正確的連接字符串

1

有2種方法ATLEAST做到這一點(?):

  • 創建10 IIS站點,每個站點指向它自己的目錄,將盡可能多的功能可能在DLL在GAC中。然後你有共享的代碼庫。但仍有一些個人網站上的數據在磁盤上。
  • 創建10 IIS站點,每個站點指向同一個目錄。將所有10個連接字符串放在web.config中。在你的代碼中有功能爲請求選擇正確的連接字符串。

實際上是第二個,你可能不需要10個站點。只需讓DNS將所有10個站點指向相同的IP即可。

但是,您應該考慮它是否更有價值。將網站自動複製到10個位置的安裝腳本可能是最好的方法。

相關問題