Службам iis не удалось получить доступ к файлу web config для веб сайта или приложения
Здесь полная ошибка:
Аппарат работает Windows Server 2008 R2. Мы разрабатываем наше веб-приложение с помощью Visual Studio 2008.
Согласно Microsoft, код 8007000d означает синтаксическую ошибку в нашем web.config - кроме того, что проект строит и работает нормально локально. Глядя на web.config в блокноте XML, также не возникает никаких синтаксических ошибок. Я предполагаю, что это должна быть какая-то плохая конфигурация с моей стороны.
Кто-нибудь знает, где я могу найти дополнительную информацию об ошибке? В EventViewer ничего не отображается: (
Не уверен, что еще полезно упомянуть.
Помощь приветствуется. Спасибо!
ОБНОВЛЕНИЕ! - POSTED WEB.CONFIG НИЖЕ
Хорошо, поскольку я разместил исходный вопрос выше, я отслеживал точные строки в web.config, которые вызывают ошибку.
Вот строки (они появляются между тегами <System.webServer> ).
Как только я это сделал, я получаю новую ошибку 500.19. К счастью, на этот раз IIS фактически сообщает мне, какой бит web.config вызывает проблему.
Посмотрев на эти строки, выяснилось, что проблема переместилась дальше в тег <System.webServer> в тег <handlers> .
Не удалось загрузить файл или сборку "System.Web.Extensions, Версия = 1.0.61025.0, Культура = нейтральная, PublicKeyToken = f2cb5667dc123a56 'или одной из его зависимостей. Система не может найти указанный файл.
Нужно ли мне что-то установить в IIS, чтобы заставить работать с ними?
Еще раз спасибо за любую помощь.
Web.config
Вот неприятные бит нашего web.Config. Надеюсь, это поможет кому-то найти нашу проблему!
ОТВЕТЫ
Ответ 1
Ага! Я победил эту проблему! Боже мой, это был зверь для кого-то вроде меня с ограниченным опытом IIS. Я действительно думал, что собираюсь провести все выходные, чтобы починить его.
Здесь решение для всех, кто когда-либо сталкивался с этой злой проблемой.
Первое, о чем следует знать: если вы надеетесь, что это ваше решение, убедитесь, что у вас одинаковый код ошибки (0x8007000d) и источник конфигурации (-1: 0:). Если нет, то это не ваше решение.
Следующее, что нужно знать: AJAX неправильно установлен в вашем файле web.config!
Затем установите расширения AJAX 1.0 на свой производственный сервер по этой ссылке:
Ответ 2
У меня были эти точные симптомы, и мой вопрос был похож на Питера. Создал существующий проект на новом сервере. Мой проект ссылался на модуль перезаписи URL-адреса IIS7, но он еще не был установлен на новом сервере. Установка исправила мою проблему.
Вы можете использовать установщик Microsoft Web Platform для его установки. Выполните его, выберите "Продукты", в левом меню выберите "Сервер" и найдите URL Rewrite в списке и установите его.
Или вы можете скачать его здесь.
Ответ 3
После битвы с этим в течение дня на новой машине я наткнулся на следующие ссылки. Мне не хватало модулей перезаписи. Все это исправлено.
Ответ 4
Та же проблема на сервере 2016, IIS 10, ошибка 500.19. Я установил модуль перенаправления, и он работал. Я не знаю, почему это не было включено по умолчанию.
Чтобы было ясно, похоже, что web.config из IIS 7 будет работать или предназначен для работы, но отсутствие этого модуля дает действительно странную и бесполезную ошибку. Googling ведет вас на страницу Microsoft, которая настаивает на том, что ваш сайт поврежден или ваш web.config поврежден. Ни то, ни другое, похоже, не так.
Ответ 5
Была та же проблема, что и выше, такой же код ошибки и т.д. Настройка локального веб-сайта в Windows 8. После долгих поисков было обнаружено, что нам не хватало перезаписи URL. После загрузки все было в порядке.:)
Ответ 6
Я просто добавляю ответ, потому что я часами пытался решить те же самые симптомы (но разные проблемы):
Возможной причиной является x86 dll в 64-битном пуле приложений, решение состоит в том, чтобы включить 32-битные приложения в настройках пула приложений.
Ответ 7
Ответ 8
Ответ 9
Другой способ получить 500.19 errot без видимых причин - отсутствие каталогов и/или нарушенных разрешений на них.
В случае возникновения этого вопроса, я считаю, что вопрос задает вопрос о полной версии IIS. Я предполагаю это из-за этой строки:
Установщик IIS обычно создает для вас wwwroot и эту корневую папку по умолчанию для всех веб-сайтов и точку монтирования для виртуальных каталогов. Он всегда существует, поэтому проблем нет, обычно вам это неинтересно.
Так как файлы web.config являются иерархическими, вы можете поместить там главный файл web.config и установить некоторые корневые настройки, и все сайты наследуют его. IIS проверяет, существует ли этот файл и пытается его загрузить.
Однако первая интересная часть:
Этот каталог будет существовать, если вы правильно установили IIS. Если он не существует, вы получите 500-классную ошибку. Однако, если вы играете с разрешениями на файлы/каталоги, особенно "расширенные", вы можете случайно случайно отклонить учетную запись службы IIS от сканирования/чтения содержимого этого каталога. Если IIS не может проверить, существует ли этот wwwroot\web.config или существует, и IIS не может открыть и прочитать его - bam - ошибка 500-класса.
Однако для полного IIS это маловероятно. Разработчики/админы, работающие с полным IIS, обычно неохотно относятся к игре с wwwroot , поэтому он обычно корректно настроен.
Однако, на IIS Express..
Обычно IIS Express "просто работает". Часто разработчики, использующие IIS Express, часто не знают, насколько внутренне он похож на реальный IIS.
Вы можете легко наткнуться на то, что IIS Express имеет свой собственный файл applicationHost.config, а VS создает и управляет им для вас (правильно, в некоторой степени), и этот вид открывателя говорит вам, что это не так просто и нажмите и выберите, как кажется сначала.
Помимо этого конфигурационного файла VisualStudio также создает пустую структуру каталогов в вашей папке Documents . Если я правильно помню, IIS Express считает эти папки корневыми каталогами вашего сайта (ов), на которых смонтированы виртуальные каталоги с вашим кодом.
Позже, как и IIS, когда IIS Express запустится, он ожидает этих папок для существования и проверяет наличие там файлов root.config. Файлы сайта web.config. Почти всегда эти файлы web.config отсутствуют - и это нормально, потому что вы их не хотите - у вас есть ваше ** приложение web.config, они размещаются с остальной частью содержимого в виртуальных каталогах.
Впервые я столкнулся с этой проблемой, когда я очищал свой жесткий диск. Я обнаружил, что папка "документы\веб-сайты", полная мусора, я узнал несколько летних проектов, над которыми я больше не работаю, все пустые, а не один файл, поэтому я удалил все это. Через неделю - bam - я не могу запускать/отлаживать какие-либо сайты, на которых я работал в данный момент. Ошибка была 500.19, не удалось прочитать файл конфигурации.
Идите туда, где указывается ошибка, убедитесь, что эти папки существуют, убедитесь, что учетная запись рабочего стола IIS может перемещаться и читать их, и если вы заметите, что что-то не так, возможно, это будет так.
BTW. В VisualStudio на ProjectProperties/Web есть кнопка "Создать виртуальный каталог". Это, по сути, делает это, поэтому вы можете попробовать сначала, но IIRC он может также иногда очищать/перезаписывать/заменять разделы конфигурации в файле applicationHost.config, поэтому будьте осторожны с этой кнопкой, если у вас есть какие-либо пользовательские настройки там.
Ответ 10
Я установил это и перезапустил IIS с помощью ("net stop was/y" и "net start w3svc") после установки, но я получу ошибку 500.19 с кодом ошибки 0x8007000d и источником конфигурации -1: 0:.
Надеюсь, это поможет кому-то!
Ответ 11
Это может быть или не быть связано. Я начал с той же ошибки, упомянутой выше, начал поиск в Google, внесении изменений, получении новых ошибок, бесконечном цикле.
Изменение, вызванное этой ошибкой, связано с делегированием функций в диспетчере IIS в разделе "Управление" на сервере. Извините, я не помню, какой из них я изменил, но googling может помочь.
Это заставило меня пройти первую ошибку в совершенно новый поток других, некоторые совершенно бессмысленные. (Я получаю одну ошибку при работе в виртуальном каталоге, преобразование ее в приложение дало бы еще одну ошибку, etec и т.д.). Что, наконец, решило эту серию ошибок: Диспетчер IIS, Пулы приложений, DefaultAppPool, Включить 32-разрядные приложения = True
Я запустил это приложение в 32-битном окне Windows XP, и теперь я запускаю его в 64-битном окне Windows 7.
Так что, надеюсь, это помогает кому-то другому.
Ответ 12
Прокомментируйте следующие строки в файле web.config.
Это будет работать.
Ответ 13
Мой IIS 7.5 не понимает тег в web.config В VS 2010 также подчеркивается этот тег. Проверьте свой файл конфигурации, чтобы найти все подчеркнутые теги. Я помещаю его в комментарий, и ошибка уходит.
Ответ 14
Проводка только как напоминание, если у кого-то может быть такая же проблема.
Ответ 15
Эта прекрасная подробная ошибка все еще присутствует в 2019 году! Я просто хочу добавить, что если ваш web.config действителен и доступен, он, скорее всего, является проблемой зависимости.
Как упоминалось в OP, это был модуль AJAX , а другими, как правило, модуль Rewrite . Просто следите в своем файле web.config, на какие модули и библиотеки ссылаются ваши теги, поскольку код ошибки 0x8007000d может быть примерно ЛЮБОЙ зависимостью.
В моем случае я не осознавал, что пакет AspNetCore отсутствует и должен был быть установлен! Так счастлив, что нашел этот пост!
Ответ 16
У меня была такая же проблема в Windows 7.
Решение заключалось в том, чтобы перейти к базовым настройкам > connect as > specific user - и войти в систему как пользователь, а не по умолчанию 'pass-through'
Это исправило проблему для меня.
Ответ 17
запустите cmd как Admin.
Unistall all iis.
Переустановите iis и нормальный режим работы
Ответ 18
Я получил эту ошибку, поместив тег <customErrors> внутри <system.webServer> вместо <system.web> , где он принадлежит. В теге <customErrors> была небольшая кривая, но я не заметил ее сразу.
Ответ 19
Убедитесь, что все функции IIS включены правильно.
-
Откройте функции Windows (включите или выключите функции Windows).
Прокрутите вниз до Информационные службы Интернета
Откройте раскрывающийся список "World Wide Web plus"
Ответ 20
Причиной моей проблемы была приведенная ниже конфигурация:
Примечание. Я удалил этот раздел для локального тестирования, так как он хорошо работает в Azure.
- Добавить IIS_IUSRS с разрешением на чтение для файлов в папке
- Измените метод проверки подлинности IIS на BasicAuthentication
- обновите сайт. Это сработает
Что я могу добавить в свой файл web.config? Мне никогда раньше не приходилось его редактировать. Вот его текущее содержание:
Ошибка конфигурации: не удается прочитать файл конфигурации из-за недостаточных разрешений
Файл конфигурации: \? \ C: \ Users ***** \ Documents \ Visual Studio2010 \ WebSites \ PointsForTime \ web.config
Нет проблем с вашим web.config . Ваш веб-сайт работает в рамках процесса. В iis вы можете определить идентичность этого процесса. Удостоверение , под которым пул приложений вашего веб-сайта ( Сетевые службы, локальная система и т. Д.), Должно иметь разрешение на доступ и чтение в Интернете. .config файл.
Обновить:
Этот обновленный ответ такой же, как и выше, но немного длиннее, проще и улучшен.
Прежде всего : вам не нужно ничего менять в файле конфигурации. Все в порядке . Проблема связана с разрешениями для файлов Windows .
Эта проблема возникает из-за того, что ваше приложение не может получить доступ и прочитать файл web.config .
Сделайте файл доступным для группы IIS_IUSRS . Просто щелкните правой кнопкой мыши web.config и выберите свойства на вкладке безопасность , добавьте IIS_IUSRS .
Так что это за штука IIS_IUSRS?
Ваш веб-сайт представляет собой файл EXE . Как и любой exe-файл, он должен быть запущен пользователем и запускается в соответствии с разрешениями , назначенными этому пользователю.
Когда ваш сайт запускается в IIS , Пул приложений вашего веб-сайта связывается с пользователем ( Сетевые службы, Локальная система и т. д. . ) (и может быть изменено в IIS)
Поэтому, когда вы говорите IIS_IUSRS , это означает любого пользователя ( Сетевые службы, локальная система и т. Д. . ), что ваш сайт работает как .
И как @Seph упоминается в комментарии ниже : Если ваш компьютер находится в домене , помните, что Группа IIS_IUSRS - это локальная группа . Также убедитесь, что, когда вы пытаетесь найти этого пользователя, проверьте местоположение, он должен быть установлен на локальный компьютер, а не на корпоративный домен.
Все предоставленные ответы действительны и работают при различных обстоятельствах.
Для меня перезапуск Visual Studio сработал.
Принятое решение меня не устроило. Я использую репозиторий Git, и он клонирован в следующую папку
Я создал новый веб-сайт IIS и указал его на путь. У которого не было разрешений iis_iusrs, предложенных в принятом решении. Когда я добавил разрешения, он все еще не работал.
Он начал работать только тогда, когда я дал следующие разрешения группе «Пользователи», и наследование каскадировало разрешения для web.config. Вероятно, следовало применить его только к web.config, чтобы уменьшить площадь поверхности атаки.
Я использовал subst для создания сопоставления от D: до C:, чтобы сохранить те же настройки, что и у других разработчиков в команде. Это также дало мне те же ошибки, что и описано. Удаление этого исправило это для меня.
В данной статье я подробно опишу процесс организации веб- доступа к базам данных «1С:Предприятие» 8.3 на веб-сервере IIS (Internet Information Server), входящего в поставку Microsoft Windows Server. Для более старых версий «1С:Предприятие» (8.1 и 8.2) алгоритм публикации баз данных в целом аналогичен. Будет рассмотрен алгоритм настройки IIS для работы «1С:Предприятие», а также описан процесс публикации баз данных на веб-сервере как для 32-разрядного, так и для 64-разрядного модуля расширения веб-сервера.
0. Оглавление
1. Что понадобится
- Компьютер отвечающий минимальным системным требованиям для работы веб-сервера под управлением одной из операционных систем:
- Права локального администратора на данном компьютере.
- Дистрибутив для установки компонент «1С:Предприятие». Для настройки 64-разрядного модуля расширения веб-сервера, дистрибутив для установки 64-разрядного сервера «1С:Предприятие». В данном примере используется версия 8.3.4.389. Для более старых версий «1С:Предприятие» (8.1 и 8.2) алгоритм публикации баз данных в целом аналогичен.
2. Установка веб-сервера IIS
Устанавливаем веб-сервер Internet Information Server, который по умолчанию входит в поставку Microsoft Windows Server. При установке обязательно выбираем компоненты:
Подробно про процесс развертывания веб-сервера IIS я писал:
3. Установка компонент «1С:Предприятие»
На этот же сервер, где развернут веб-сервер IIS, устанавливаем «1С:Предприятие» (32-разрядные компоненты) обязательно выбрав при установке компоненты:
- 1С:Предприятие
- Модули расширения веб-сервера
Если планируется настроить 64-разрядный модуль расширения веб-сервера, то необходимо дополнительно запустить программу установки 64-разрядного сервера из соответствующей поставки «1С:Предприятие» и установить компоненту:
4. Настройка операционной системы
Теперь необходимо установить необходимые права на ключевые папки, используемые при работе веб-доступа к базам данных «1С:Предприятие». Для каталога хранения файлов веб-сайтов, опубликованных на веб-сервере (по умолчанию C:\inetpub\wwwroot\ ) необходимо дать полные права группе «Пользователи» (Users). В принципе, этот шаг можно пропустить, но тогда для публикации или изменения публикации базы данных надо будет запускать «1С:Предприятие» от имени администратора. Для настройки безопасности данного каталога, кликаем по нему правой кнопкой мыши и в контекстном меню выбираем «Свойства» (Properties).
Затем нажимаем расположенную справа кнопку «Поиск» (Find Now), после чего выбираем необходимую группу IIS_IUSRS в таблице результатов поиска и нажимаем «ОК».
Группа IIS_IUSRS появится в списке групп или пользователей. Даем ей полные права на на выбранную директорию и нажимаем «Применить» (Apply) для сохранения изменений.
Ну и наконец, если публикация выполняется для файловой базы, необходимо также дать группе IIS_IUSRS полные права на каталог с расположенными файлами данной информационной базы.
5. Публикация базы данных на веб-сервере
Откроется окно настройки свойств публикации на веб-сервере. Основные поля необходимые для публикации уже заполнены по умолчанию:
Выбрав необходимые настройки публикации нажимаем «Опубликовать».
6. Настройка IIS для использования 32-разрядного модуля расширения веб-сервера
В списке пулов приложений найдем пул с именем DefaultAppPool. Кликнем по нему правой кнопкой мыши и в контекстном меню выберем пункт «Дополнительные параметры» (Advanced Settings).
В открывшемся окне параметров пула приложения, в группе «Общие» (General) найдем пункт «Разрешены 32-разрядные приложения» (Enable 32-Bit Applications) и установим значение параметра равным True. Затем сохраним изменения нажав «ОК».
7. Настройка IIS для использования 64-разрядного модуля расширения веб-сервера
Зарегистрировать 64-разрядный модуль расширения веб-сервера можно с помощью утилиты webinst.exe соответствующей версии, расположенной в каталоге bin, каталога с установленной программой «1С:Предприятие», либо воспользоваться приведенным ниже способом.
В таблице сопоставлений обработчиков найдем обработчик «1С Web-service Extension». Откроем данный обработчик, кликнув 2 раза по соответствующей строке в таблице.
Отредактируем обработчик, заменив путь к исполняемой dll 32-разрядного модуля расширения веб-сервера, который выбран в данный момент, на путь к 64-разрядной версии библиотеки. В данном примере меняем путь c «C:\Program Files (x86)\1cv8\8.3.4.389\bin\wsisapi.dll» на «C:\Program Files\1cv8\8.3.4.389\bin\wsisapi.dll» воспользовавшись кнопкой выбора. Изменив путь нажимаем «ОК» для сохранения изменений.
8. Подключение к опубликованной информационной базе через веб-браузер
К данной информационной базе также можно подключиться и с любого компьютера в сети, обратившись к веб-серверу по его внутреннему (или если прокинут порт 80, по внешнему) IP-адресу.
В этом случае, для корректной работы «1С:Предприятие», имя домена, на который идет обращение (или IP-адрес) должен быть добавлен в надежные узлы Internet Explorer, а также для него должны быть разрешены всплывающие окна. Подробнее про настройку Internet Explorer для работы веб-клиента «1С:Предприятие» читайте здесь.
9. Подключение к опубликованной информационной базе через клиент «1С:Предприятия»
К опубликованной на веб-сервере информационной базе можно подключиться и с помощью тонкого клиента «1С:Предприятия». Для подключения откроем окно запуска «1С:Предприятие» и нажмем кнопку «Добавить» для добавления информационной базы.
В окне добавления информационной базы/группы установим переключатель в «Добавление в список существующей информационной базы» и нажмем «Далее».
Введем имя базы данных, как она будет отображаться в списке информационных баз (должно быть уникальным для данного списка), тип расположения выберем «На веб-сервере» и нажмем «Далее».
Вводим строку адреса для подключения к информационной базе (без префикса /ru_RU/). Также здесь можно указать параметры прокси-сервера (если есть) и способ аутентификации на веб-сервере. Указав необходимые настройки снова жмем «Далее».
Указываем параметры запуска для информационной базы и нажимаем «Готово» для завершения работы мастера.
После чего данная информационная база появится в списке баз окна запуска «1С:Предприятие». Обратим внимание что режим запуска Конфигуратор недоступен для данного типа подключения. Нажимаем «1С:Предприятие» для подключения к информационной базе.
10. Конфигурационные файлы виртуального каталога
Рассмотрим подробнее структуру файлов, которые были созданы в процессе публикации. Если веб-доступ к опубликованной информационной базе по каким-то причинам не заработал, конфигурационные файлы можно отредактировать вручную, для достижения желаемого результата (конфигурационные файлы из данной статьи для 64-разрядного модуля расширения веб-сервера можно скачать здесь).
Перейдем в каталог, который мы указывали во время публикации базы данных. В нем увидим два файла:
Оба файла доступны для просмотра и редактирования с помощью любого текстового редактора, например программы «Блокнот» (Notepad). Рассмотрим структуру этих файлов подробнее.
10.1. Файл default.vrd
В файле default.vrd описываются опубликованные Web-сервисы (элемент <ws>), а также указывается имя виртуального приложения (атрибут base) и строка подключения к информационной базе «1С:Предприятие» (атрибут ib). В данном примере для файловой информационной базы, строка подключения будет следующей:
В строке подключения можно указать логин и пароль пользователя. В этом случае, подключение к информационной базе будет выполняться от имени указанного пользователя. Например, для подключения от имени пользователя Продавец, строка подключения будет следующей:
Для серверной информационной базы строка подключения будет иметь вид:
Подробнее про структуру данного файла можно почитать в книге «Руководство администратора» 2-е издание , Приложение 2, глава 3.12.
10.2. Файл web.config
Данный обработчик можно найти (или добавить, если его нет) в Диспетчере служб IIS. Для этого необходимо выделить вкладку с текущим приложением и в окне свойств выбрать пункт «Сопоставления обработчиков» (Handler Mappings).
Смотрите также:
IIS (Internet Information Services) – один из немногих штатных инструментов Windows, которым можно пользоваться, не ища более приемлемых альтернатив от других разработчиков. Веб-сервер IIS с поддержкой языка PHP можно использовать…
FTP-Сервер обеспечивает возможность передачи файлов между клиентом и сервером с помощью протокола FTP. Здесь будет рассказано как запустить FTP-сервер в Windows Server 2008 R2. 0. Оглавление Добавление службы FTP-сервер Добавление…
Оригинальная версия продукта: службы IIS 7.0 и более поздних версий
Оригинальный номер КБ: 942055
Чтобы устранить эту ошибку, ознакомьтесь со следующими разделами для получения соответствующих сведений о коде ошибки.
Код HRESULT 0x8007000d
Эта проблема возникает из-за того, что файл ApplicationHost.config или Web.config содержит поврежденный или неопознанный XML-элемент. IIS не может определить XML-элементы модулей, которые не были установлены. Например, модуль переопределения URL-адресов для IIS.
Используйте один из следующих способов:
- Удалите поврежденный XML-элемент из файла ApplicationHost.config или Web.config.
- Проверьте неопознанные XML-элементы и установите соответствующие модули IIS.
Код HRESULT 0x80070021
Эта проблема может возникать, когда указанная часть файла конфигурации IIS блокируется на более высоком уровне конфигурации.
Разблокируйте указанный раздел или не используйте его на более высоком уровне. Дополнительные сведения о блокировке конфигурации см. в разделе Использование блокировки в конфигурации IIS 7.0.
Код HRESULT 0x80070005
Эта проблема может возникать по одной из следующих причин:
- IIS используется на компьютере под управлением Windows. Кроме того, настройте веб-сайт для использования сквозной проверки подлинности UNC для доступа к удаленному серверу общего доступа UNC.
- У группы IIS_IUSRS нет необходимых разрешений для файла ApplicationHost.config, Web.config или виртуальных каталогов/каталогов приложений IIS.
Используйте один из следующих способов:
Не задавайте в настройках веб-сайта использование сквозной проверки подлинности UNC для доступа к удаленному серверу общего доступа UNC. Вместо этого укажите учетную запись пользователя с надлежащими разрешениями для доступа к удаленному ресурсу UNC.
Предоставьте группе IIS_IUSRS разрешение на чтение файла ApplicationHost.config или Web.config. Для этого выполните следующие действия:
В проводнике Windows найдите папку, содержащую файл ApplicationHost.config, связанный с веб-сайтом, либо виртуальные каталоги или каталоги приложений, содержащие связанный с веб-сайтом файл Web.config.
Файл Web.config может не находиться в виртуальных каталогах или каталогах приложений в IIS. Даже в такой ситуации необходимо выполнить следующие действия.
Щелкните правой кнопкой мыши папку, содержащую файл ApplicationHost.config, либо виртуальные каталоги или каталоги приложений, которые могут содержать файл Web.config.
Выберите пункт Свойства.
Перейдите на вкладку Безопасность и нажмите Редактировать.
Нажмите Добавить.
В поле Введите имена выбираемых объектов введите <имя_компьютера>\IIS_IUSRS, щелкните Проверить имена, а затем нажмите кнопку OК.
<Имя_компьютера> является заполнителем для имени компьютера.
Установите флажок Чтение и нажмите кнопку ОК.
В диалоговом окне Свойства для папки нажмите кнопку OK.
Удостоверьтесь, что свойства папки наследуются файлами ApplicationHost.config и Web.config, чтобы у IIS_IUSRS было разрешение на чтение таких файлов.
Код HRESULT 0x800700b7
Чтобы решить эту проблему, удалите в файле ApplicationHost.config повторяющуюся запись для правила авторизации. Для этого выполните следующие действия:
Если система запросит пароль администратора или подтверждение, введите пароль или нажмите кнопку Продолжить.
В меню Файл нажмите Открыть, введите %windir%\System32\inetsrv\config\applicationHost.config в поле Имя файла и нажмите кнопку Открыть.
В файле ApplicationHost.config удалите дублирующую запись, похожую на следующий код:
Код HRESULT 0x8007007e
Эта проблема возникает в том случае, если файл ApplicationHost.config или Web.config ссылается на модуль или библиотеку DLL, которые являются недопустимыми или не существуют.
В файле ApplicationHost.config или Web.config найдите недопустимую ссылку на модуль или библиотеку DLL и исправьте ее. Чтобы определить, какая ссылка на модуль неверная, включите функцию "Трассировка невыполненных запросов" и воспроизведите проблему.
Код HRESULT 0x800700c1
Эта проблема может возникать, если разрядность указанного модуля отличается от разрядности пула приложений, где он размещен. Например, если вы пытаетесь загрузить 32-разрядный компонент в 64-разрядный пул приложений. Подобная проблема может также наблюдаться при повреждении указанного модуля.
Убедитесь, что разрядность указанного модуля такая же, как и у пула размещенных приложений. Кроме того, убедитесь, что модуль не поврежден.
Код HRESULT 0x8007010b
Эта проблема может возникать, если указанный каталог содержимого недоступен.
- Убедитесь, что путь к файлу существует.
- Убедитесь, что путь к файлу указан правильно.
- Убедитесь, что путь к файлу имеет правильный набор разрешений на уровне файлов.
- Убедитесь, что путь к файлу указывает на допустимый тип файловой системы.
Если вам точно не известен путь к файлу, определите его с помощью монитора процессов или трассировки невыполненных запросов.
Код HRESULT 0x8007052e
У удостоверения процесса по умолчанию в IIS недостаточно разрешений для открытия файла Web.config на удаленном общем ресурсе.
Убедитесь, что учетная запись удостоверения пула приложений этого веб-приложения имеет достаточно разрешений для открытия файла Web.config.
Код HRESULT 0x80070003
Эта ошибка вызвана отсутствием разрешения или физическим путем, который не соответствует пути для виртуального каталога. Например, в физическом корневом пути веб-приложения нет Web.config.
- Убедитесь, что путь Web.config существует и имеет правильный набор разрешений.
- Выполните сбор журналов монитора процессов, чтобы получить дополнительные сведения об ошибке.
Устраните проблему с поврежденным файлом конфигурации IIS при обновлении Windows
В соответствии с общим правилом безопасности для всех файлов конфигурации (не ограниченные IIS) должны быть созданы резервные копии перед установкой какого-либо обновления. Если вы используете виртуальные машины, сделайте снимок виртуальной машины перед ее обновлением. Этот совет применим не только к обновлениям Windows.
- Добавить IIS_IUSRS с разрешением на чтение файлов в папке
- Изменить метод проверки подлинности IIS на BasicAuthentication
- обновите сайт. Он будет работать
Что я могу добавить в мой файл web.config? Мне никогда не приходилось редактировать его раньше. Вот его текущее содержимое:
Ошибка конфигурации: не удается прочитать файл конфигурации из-за недостаточных разрешений
Файл конфигурации: \?\C:\Users *****\Documents\Visual Studio2010\WebSites\PointsForTime\web.config
С вашим веб-сайтом нет проблем с . Ваш веб-сайт работает в процессе. В iis вы можете определить личность этого процесса. идентификатор, который использует ваш веб-сайт пул приложений, как (сетевые службы, локальная система и т.д.), Должен иметь разрешение на доступ и чтение файла web.config.
Update:
Этот обновленный ответ аналогичен приведенному выше, но немного длиннее, проще и улучшен.
Прежде всего: вам не нужно ничего менять в конфигурационном файле. В порядке. Проблема заключается в разрешении файлов Windows.
Эти проблемы возникают из-за того, что ваше приложение не может получать доступ и читать файл web.config.
Сделайте файл доступным для группы IIS_IUSRS. Просто щелкните правой кнопкой мыши web.config и нажмите свойства, под вкладкой безопасность добавьте IIS_IUSRS.
Итак, что это за IIS_IUSRS?
Ваш веб-сайт , например, exe. Как и любой exe файл, он должен быть запущен пользователем, и он запускает в соответствии с разрешениями, назначенными этому пользователю.
Когда ваш сайт запущен в IIS, Пул приложений вашего веб-сайта связан с пользователем (сетевые службы, локальная система, И т.д. ) (и может быть изменен в IIS)
Поэтому, когда вы говорите IIS_IUSRS, это означает любой пользователь (сетевые службы, локальная система и т.д.), которые работают на вашем сайте.
И как @Seph, упомянутый в комментарии ниже. Если ваш компьютер находится в домене, помните, что группа IIS_IUSRS - это локальная группа. Также убедитесь, что когда вы пытаетесь найти этого пользователя, проверьте местоположение, на котором он должен быть установлен на локальный компьютер, а не на корпоративный домен.
Читайте также: