Я создал веб-приложение, разработанное ASP.net MVC, и пытаюсь настроить IIS.
Ошибка: ошибка HTTP 500.19, код ошибки 0x80070005, не удается прочитать файл конфигурации из-за недостаточных разрешений, файл конфигурации: C: \ inetpub \ wwwroot \ BudgetManagerMain \ BudgetManager \ web.config
Если я настрою AppPool на использование «администратора», у меня не будет проблем, и я могу получить доступ к сайту нормально. Если я установил СЕТЕВОЙ СЕРВИС (или что-то еще, включая самостоятельно созданные учетные записи администратора или пользователя без прав администратора), я получаю указанную выше ошибку.
Вещи, которые я пробовал:
используя Process Monitor, вот краткое изложение того, что я обнаружил в событии ACCESS DENIED
ВКЛАДКА СОБЫТИЙ:
ВКЛАДКА ПРОЦЕСС
... много всего, что кажется неуместным
Пользователь: NT AUTHORITY \ NETWORK SERVICE
Простейшая интерпретация ошибки: IIS обнаружил папку с именем
C:\inetpub\wwwroot\BudgetManagerMain\BudgetManager
и попытался прочитать web.config файл из этого места, но Учетная запись пула приложений не смог прочитать файл web.config в этой папке.
Вероятно, это произойдет из-за разрешений NTFS, которые не позволяют учетной записи сетевой службы (вы отметили выше) получить доступ к этой папке.
Учетной записи пула приложений требуется доступ на чтение ко всем папкам и файлам web.config на веб-сайте.
Вы можете попробовать удалить соответствующую папку из папки временных файлов ASP.NET (C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files
в XP). Может там какое-то кеширование происходит?