2009-08-19 30 views
1

我想知道託管不同域的Web應用程序的最佳方式。我想要實現的是:主機位於一個文件夾中的應用程序的多個站點

  1. 使Web應用程序的單個文件夾更易於維護。
  2. 能夠覆蓋每個站點的Web.Config的某些部分(ATM只有ConnectionString,但可能更多)。
  3. 將日誌文件存儲在文件系統中,而不會干擾網站之間的連接。
  4. 在文件系統中存儲其他文件(由應用程序生成),而不會在站點之間產生干擾。

蠻力解決方案是爲每個網站創建目錄並獨立更改每個網站的所有配置。這真的保證了這些網站是獨立的。

但爲了更容易維護(是否真的更容易?)我想在一個文件夾中的應用程序(所以我部署到一個地方,升級一次等)。
但不知道如何在這種情況下,我可以達到我提到的東西。

我想聽聽一些建議,也許有一個優雅的解決方案。

謝謝,
德米特里。

回答

0

如果您爲多個站點使用相同的文件,您將遇到文件鎖定。我認爲通過分離它來管理網站更容易,因爲擁有一個共享的web.config可能會混淆設置。例如將正確的跟蹤/記錄指向正確的位置。

+1

什麼文件可以鎖定? ASP.NET將每個網站的文件編譯到一個單獨的臨時目錄中。是的,共享配置混淆了設置,這就是爲什麼我問什麼是優雅的解決方案。 – 2009-08-19 05:52:21

+0

當您使用預編譯的應用程序(更快的應用程序啓動速度並隱藏aspx源代碼)時,ASP .NET不會執行重新編譯。 如果您不重新編譯,使用您提到的實現策略,您仍然有多個程序集副本(存儲在iis緩存中),這只是asp.net管理他們的位置。 – Russell 2009-08-20 00:18:33

+0

我不預編譯應用程序。你能指點我的文章,展示存儲在IIS緩存中的.NET程序集嗎?我不認爲這與IIS緩存有關。也是你的答案有不同的文件夾爲同一個應用程序,不要分享任何東西? – 2009-08-20 03:40:54

相關問題