У меня есть несколько старых сайтов ASP .Net Framework (веб-формы и mvc) на сервере IIS, которые работают в пуле приложений, использующем пользовательскую учетную запись AD. Обслуживание любых статических файлов (изображений, js, css) из папки Content сайта всегда работало нормально, но несколько недель назад это начало давать сбои. Все запросы статического контента возвращают ошибку 500. Динамический контент по-прежнему работает нормально. Когда я переключаю пул приложений на использование встроенного ApplicationPoolIdentity, статический контент возвращается нормально. Я проверил, что пользовательская учетная запись AD имеет доступ для чтения к статическим файлам в файловой системе. В журнале событий нет сообщений, а журналы IIS показывают только ответ 500 без подробностей. Поскольку это отлично работает с использованием встроенной учетной записи, я предполагаю, что обработчик статических файлов все еще установлен и работает, как и ожидалось.
Любые мысли о том, что могло измениться, что может привести к сбою статических файлов только для пользовательских учетных записей или где я могу найти более подробную информацию об ошибке, с которой сталкивается IIS?
Обновлено: после дальнейшего тестирования я обнаружил, что использование моей личной учетной записи AD для пула приложений позволяет сайту обслуживать статические файлы. Итак, вы предполагаете, что проблема каким-то образом связана с привилегиями пользовательской учетной записи?
Итак, благодаря приведенной выше ссылке от Лекса Ли я смог включить отслеживание неудачных запросов, и это указало мне на ошибку аутентификации: «Либо не был предоставлен требуемый уровень олицетворения, либо предоставленный уровень олицетворения недействителен. (0x80070542)». Путем добавления пользовательской учетной записи AD для пула приложений в локальную группу администраторов на сервере проблема была устранена.
learn.microsoft.com/en-us/iis/troubleshoot/…