Я пытаюсь настроить сайт IIS, который имеет как публичную, так и частную стороны. Публичная сторона использует анонимную аутентификацию, а приватная сторона использует пользовательский модуль аутентификации, который я предоставляю, вот обзор структуры (имена пулов приложений находятся в []
):
+SITE ROOT [default_app_pool]
|-public [default_app_pool] (folder converted to application)
| -- folderA
| -- folderB
| -- folderC
| -- publicApp [publicApp]
|-private [default_app_pool] (folder converted to application)
| -- bin
| >> custom_auth_module.dll
| -- app1 [app1]
| -- app2 [app2]
| -- app3 [app3]
В этом сценарии папка private
имеет web.config
который предоставляет настраиваемый модуль аутентификации (а также некоторые другие настройки поставщика членства)
Структура и пулы приложений просты в настройке, но у меня возникают проблемы с аутентификацией. В идеале app1 ... app3 должно просто наследовать аутентификацию из родительского каталога (частного). Однако это работает, только если путь к приложению (в основных настройках) /private/{appN}
. Это не идеально по ряду причин:
/private/
)Если я установлю путь к приложению (/), то пользовательский модуль аутентификации не будет унаследован. Если я попытаюсь создать виртуальную папку на корневом уровне, которая указывает на / appN (таким образом, сохраняя исходный URL-адрес), приложение не загружается должным образом (похоже, что оно использует неправильный пул приложений - не уверен на 100%. )
Итак, вкратце, есть ли способ заставить IIS выполнять наследование на основе структуры папок того, что находится на диске (не обязательно того, что структурировано в веб-пути?). В качестве альтернативы, есть ли способ дать приложению IIS «псевдоним» (например, это в /private/appN
, но он также будет прослушивать хиты в /appN
).
Спасибо за помощь, все советы приветствуются.