IIS отменяет настройки веб-сайта при остановке - PullRequest
1 голос
/ 21 марта 2012

У меня проблема с настройкой IIS.Я программно создаю веб-сайт и приложение (виртуальный каталог) под веб-сайтом.Среди других настроек я добавляю карту приложений с подстановочными знаками в настройках приложений.Когда IIS перезапускается, он удаляет карту приложения wilcard (и некоторые другие параметры, но я просто упомяну карту wilcard для простоты).Я могу повторно добавить карту с помощью диспетчера 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();

1 Ответ

0 голосов
/ 26 марта 2012

Разобрался с проблемой.Это описано в статье Microsoft KB 286196: http://support.microsoft.com/kb/286196 Все мои уязвимые машины были Windows Server 2K3 R2, как описано в статье.

...