1
我在配置IIS時遇到問題。我以編程方式在網站下創建一個網站和一個應用程序(虛擬目錄)。在其他設置中,我在應用程序設置中添加了通配符應用程序映射。當IIS重新啓動時,它將刪除wilcard應用程序映射(以及其他一些設置,但爲了簡單起見,我只提到了wilcard映射)。我可以使用IIS管理器重新添加地圖,但是當我重新啓動IIS時,地圖將被刪除。但是 - 如果我添加通配符映射,然後在不重新啓動IIS的情況下,首先使用瀏覽器打開該應用程序中的頁面,然後任何後續的IIS重新啓動都不會導致映射消失。任何想法發生了什麼?IIS在停止時反轉網站設置
這裏是我的代碼:
// root virtual dir object
string strRootVirtDirPath = "IIS://localhost/w3svc/" + strWebSiteID + "/root";
DirectoryEntry deRootVirtDir = new DirectoryEntry(strRootVirtDirPath);
// add new virtual dir
DirectoryEntry deNewVirtDir = deRootVirtDir.Children.Add(strAppName, "IIsWebVirtualDir");
deNewVirtDir.Properties["Path"].Value = strPhysicalDir;
deNewVirtDir.Properties["AppFriendlyName"].Value = strAppName;
deNewVirtDir.Properties["AppRoot"].Value = "/LM/W3SVC/" + strWebSiteID + "/Root/" + strAppName;
deNewVirtDir.Properties["AppPoolId"].Value = strAppPoolName;
// create the application
deNewVirtDir.Invoke("AppCreate", 1);
// commit changes
deNewVirtDir.CommitChanges();
deRootVirtDir.CommitChanges();
deNewVirtDir.Close();
deRootVirtDir.Close();
對不起,忘了提及它是IIS 6 – 2012-03-21 15:49:03
您是否在創建虛擬目錄時正確調用.Invoke(「AppCreate」),然後在更新設置後調用.CommitChanges()? – AaronS 2012-03-21 16:26:33
不知道如何驗證函數調用是否正確。代碼執行成功,我沒有任何例外。這是我的代碼: – 2012-03-22 19:08:25