Вопрос:
Я получаю сообщение об ошибке:
Module IIS Web Core Notification Unknown Handler Not yet determined Error Code 0x80070005 Config Error Cannot read configuration file due to insufficient permissions Config File \?C:inetpubwwwrootweb.config
У самого файла есть полные разрешения для IUSR. IIS запускает пул приложений в ApplicationPoolIdentity. Я сделал файловый монитор в файле, и я вижу следующее:
9:04:43.8035456 AM w3wp.exe 8104 CreateFile C:inetpubwwwrootWeb.config ACCESS DENIED Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, AllocationSize: n/a
Не знаю, почему я получаю эту ошибку… Любые идеи?
Лучший ответ:
Попробуйте предоставить доступ для чтения/записи этим учетным записям в корневую папку вашего веб-приложения и всех файлов/подписей внутри:
СЕТЬ, СЕТЕВОЕ ОБСЛУЖИВАНИЕ и, конечно, IIS_IUSRS
Ответ №1
Во-первых, убедитесь, что IUSR имеет разрешение на чтение в файле конфигурации (что, я считаю, вы это сделали)
Затем измените метод аутентификации IIS на BasicAuthentication
Если все еще не работает, возможно, расширение .config неправильно установлено в IIS.
Попробуйте все 3! Удачи!
РЕДАКТИРОВАТЬ: Не забудьте спросить вас, какое это приложение?
Ответ №2
Я просто наткнулся на это и не смог найти applicationpoolidentity в качестве учетной записи, чтобы добавить ее в безопасность папки. Я изменил идентификатор пула приложений из applicationpoolidentity в Local Service, и сайт прошел нормально.
Ответ №3
Я копировал живой сайт WordPress на свой локальный компьютер для редактирования/обновления при возникновении этой ошибки IIS. Изменение разрешений ничего не делало.
В моем случае просто удаление web.config выполнило трюк.
Ответ №4
Я обнаружил, что добавление mymachine/USERS с полными правами на C:inetpubwwwroot устраняет проблему.
Проблема была вызвана тем, что я поделился некоторыми сайтами контента внутри C:inetpubwwwroot с другими разработчиками. Это должно было изменить разрешения и полностью сломать IIS.
Ответ №5
Сегодня я столкнулся с этой проблемой. На этот раз не было выполнено никаких разрешений на предоставление прав (все обычные учетные записи, все, только для чтения, изменения, полный контроль).
Закрытые процессы, перезагрузка IIS, полная перезагрузка. Нет результатов.
В конце концов изменил владельца от “Администраторов” к себе, и все встало на свои места.
Обычно я запускаю Visual Studio на уровне администратора (используя свою собственную учетную запись), потому что мне нравится использовать локальный IIS для размещения/отладки сайтов ASP.NET. Возможно, это вызвало использование новых файловАдминистраторами, которые, в свою очередь, могут иметь ограниченный доступ к этим файлам с помощью процессов IIS или App Pool.
Мой идентификатор DefaultAppPool установлен для загрузки профиля пользователя. Я не знаю, в какой момент диспетчер сеанса применяет ограничения UAC/разрешения и влияет ли загрузка профиля пользователя на это. Пища для размышлений…