Помилка конфігурації IIS - Цей розділ конфігурації не можна використовувати на цьому шляху


78

Під час спроби запустити веб-сайт з’являється помилка нижче.

Веб-сайт розміщений на Windows 2012 R2.

Помилка конфігурації: Цей розділ конфігурації не можна використовувати на цьому шляху. Це трапляється, коли розділ заблоковано на батьківському рівні. Блокування здійснюється або за замовчуванням (overrideModeDefault = "Заборонити"), або явно встановлено тегом місцеположення з overrideMode = "Заборонити" або застарілим allowOverride = "false".

Код помилки: 0x80070021

Джерело налаштування:

 60:     <httpErrors errorMode="Detailed" />
 61:     <handlers>
 62:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />

Нижче наведено те, що все я пробував:

  1. Встановлено .Net 3.5 за допомогою "Додати функції та ролі" в IIS
  2. У файлі applicationHost я вніс наступні зміни коду:

    Змінено обробники розділів ', модулі, anonymousAuthentication, basicAuthentication та ін. OverrideModeDefault з "Заборонити" на "Дозволити".

  3. Виконали "Активацію HTTP" у .Net 3.5, а також 4.5.

Нижче мій код обробника файлу веб-конфігурації:

<handlers>
  <remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
  <remove name="OPTIONSVerbHandler"/>
  <remove name="TRACEVerbHandler"/>
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
</handlers>
  1. Встановлено всі функції у вікнах функцій у цьому шляху: Інформаційна служба Інтернету -> Служби всесвітньої павутини -> Особливості розробки додатків -> Усі, крім CGI, увімкнено.

  2. У делегуванні функцій ASP раніше був лише для читання, я змінив його на Read / Write

  3. Розблоковані обробники за допомогою командного рядка

Але я все ще не можу позбутися помилки. Мій локальний екземпляр працює чудово. Крім того, у мене є сервер розробки, на якому працює цей веб-сайт, лише на моєму виробничому сервері я отримую цю помилку.

Будь ласка, допоможіть мені з’ясувати, що може спричинити цю проблему.


Ви намагалися видалити обробник з інтерфейсу консолі IIS у вашому додатку і подивитися, що змінилося у вашому web.config?
D4rkTiger

Коли я двічі клацну на відображенні обробника під IIS у поданні функцій для мого веб-сайту, я отримую ту саму помилку -> Цей розділ конфігурації не може бути використаний за цим шляхом. Це трапляється, коли розділ заблоковано на батьківському рівні. Блокування здійснюється або за замовчуванням (overrideModeDefault = "Заборонити"), або явно встановлено тегом розташування з overrideMode = "Заборонити" або застарілим allowOverride = "false".
thenakulchawla

Відповіді:


153

Виконайте наведені нижче дії, щоб розблокувати обробники на батьківському рівні:

1) У дереві з'єднань (у IIS) перейдіть до вузла сервера, а потім до веб-сайту.

2) Для веб-сайту в правому вікні ви побачите редактор конфігурації в розділі Керування.

3) Двічі клацніть на редакторі конфігурації.

4) У вікні, що відкриється, зверху ви знайдете випадаюче меню для розділів. Виберіть "system.webServer / handlers" зі спадного меню.

5) З правого боку є ще одне спадне меню. Виберіть "ApplicationHost.Config"

6) На самій правій панелі ви знайдете "Розблокувати розділ" під заголовком "Розділ". Клацніть на це.

7) Як тільки обробники в applicationHost розблоковані, ваш веб-сайт повинен працювати нормально.


2
Працював як оберіг. Чи є причина, чому ці "функції" заблоковано?
Shamshiel

1
Я не впевнений, чому це відбувається. Для мене були заблоковані лише сервери на робочому рівні, інші за замовчуванням були розблоковані.
thenakulchawla

У мене є чотири ящики, усі нові, і на всі чотири встановлено по одному додатку. Лише один із чотирьох мав це питання. Ця відповідь спрацювала чудово.
stevieb

1
Дякую! Це вирішило моє питання. Хоча, спадного меню на кроці 5 для мене не існувало (IIS 10 на Win 10), і це не був розділ system.webServer / handlers, який був заблокований для мене. Це виявилося атрибутом defaultPath у розділі system.webServer / httpErrors.
Яргс

Скільки вікон ви відкрили? як називається вікно, яке відкривається? вгорі є 2 випадаючі меню!
AaA

73

Ось, що у мене працювало, у мене була подібна проблема на моєму новому ноутбуці, який мав Windows 10.

  • Шукайте "Увімкнення та вимкнення функцій Windows"
  • Позначте пункт "Інформаційні інформаційні послуги"
  • Позначте пункт "Служби всесвітньої павутини"
  • Позначте "Особливості розробки додатків"
  • Увімкніть усі елементи під цим

спробуйте ще раз, тепер це має спрацювати.


Я працюю в Windows 10, і одне з останніх оновлень (ймовірно, Anniversary Update) знищило всі мої веб-сайти та налаштування IIS і повністю вимкнуло IIS на моїй машині! Ваше рішення було швидким, і це вирішило мої проблеми. Дякую!
Рассел Джонакін

4
Новий ноутбук з Win10, і я недбало щойно перевірив кореневий вузол "Інформаційних служб Інтернету" в "Увімкнення та вимкнення функцій Windows". Це зробило фокус.
Кульме

коли я переніс усі свої дані на новий ноутбук, це не спрацювало. ваше рішення допомогло. Дякую.
Яш Пандя

Це працює як чарівність для мене, дякую Ясіру, але не знаю, що я зробив. Чи можете ви пояснити це, які зміни ви внесли?
3 правила

1
працював для моєї помилки Windows 10: Цей розділ конфігурації не можна використовувати за цим шляхом. Це трапляється, коли розділ заблоковано на батьківському рівні. Блокування здійснюється або за замовчуванням (overrideModeDefault = "Заборонити"), або явно встановлено тегом розташування з overrideMode = "Заборонити" або застарілим allowOverride = "false".
Серж Волошенко

17

Більшість розділів IIS за замовчуванням заблоковані, але ви можете "розблокувати" їх, встановивши для атрибута overrideModeDefault"Заборонити" значення "Дозволити" для відповідної групи розділів, змінивши файл ApplicationHost.config, який знаходиться в %windir%\system32\inetsrv\configрежимі адміністратора

введіть тут опис зображення


Єдине, що працювало у мене. Я шукав у редакторі конфігурацій у IIS будь-який розділ, який був позначений як заблокований значком замка і не міг знайти жодного.
nonbirithm

8

Я натрапив на цю тему та вирішив проблему, виконавши наведені нижче дії. Моя проблема може бути іншою. Сподіваюся, це може комусь допомогти.

У розділі Увімкнення та вимкнення функції Windows перейдіть до ролей сервера та виберіть найменш згадані нижче елементи.

введіть тут опис зображення

На здоров’я!


6

У мене в папці проекту був applicationhost.config. Здається, IISExpress використовує цю папку, хоча вона відображає інший файл у моїй папці c: \ users

.vs \ config \ applicationhost.config


2

Коли я спробував ці кроки, я постійно отримував помилку:

  1. Шукайте "Увімкнення та вимкнення функцій Windows"
  2. Позначте пункт "Інформаційні інформаційні послуги"
  3. Позначте пункт "Служби всесвітньої павутини"
  4. Позначте "Особливості розробки додатків"
  5. Увімкніть усі елементи під цим

Потім я подивився на засіб перегляду подій і побачив цю помилку:Unable to install counter strings because the SYSTEM\CurrentControlSet\Services\ASP.NET_64\Performance key could not be opened or accessed. The first DWORD in the Data section contains the Win32 error code.

Щоб виправити проблему, я вручну створив такий запис у реєстрі:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASP.NET_64\Performance

і виконали такі дії:

  1. Шукайте "Увімкнення та вимкнення функцій Windows"
  2. Позначте пункт "Інформаційні інформаційні послуги"
  3. Позначте пункт "Служби всесвітньої павутини"
  4. Позначте "Особливості розробки додатків"
  5. Увімкніть усі елементи під цим

1

Я думаю, що кращий спосіб полягає в тому, що ви повинні видалити конфігурацію з вашого web.config. Опублікуйте свій код на сервері та виконайте те, що ви хочете видалити, безпосередньо з інтерфейсу сервера IIS.

Завдяки цьому методу, якщо ви успішно робите те, що хочете, вам просто потрібно отримати web.config і порівняти відмінності. Після цього вам просто потрібно опублікувати рішення в цьому повідомленні :-P.


Я спробував видалити розділ обробника з файлу Web.Config та опублікувати. З якоїсь причини мені вдалося отримати дані, але коли я роблю операцію Post / Put, вона видає помилку 404 і каже, що не знайдена. Я не впевнений, чому це відбувається. Будь-які ідеї?
thenakulchawla

Гаразд, тепер ваш веб-сайт працює. Це добре :-). Тепер я думаю, ви мусите мати більше деталей про те, що ви хочете зробити? Чому доводиться видаляти цей обробник?
D4rkTiger

0

Клацніть на властивості вашого проекту, перейдіть до веб-розділу, з розділу Сервери, перейдіть з IIS express на Local IIS, він створить для вас віртуальний каталог


0

Нижче наведено, що мені вдалося:

  1. У IIS клацніть на кореневій примітці "LAPTOP ____ **".
  2. З опції, яка відображається в середньому лотку, натисніть Редактор конфігурації внизу.
  3. У верхньому спадному меню виберіть "system.webServer / handlers".
  4. У правому вікні розділу Розблокування розділу.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.