500.19 - Внутрішня помилка сервера - доступ до запитуваної сторінки неможливий, оскільки пов’язані дані конфігурації сторінки недійсні


81

Перш ніж усі це прочитають, я просто хочу сказати, що я знаю, що там є пов’язані теми, але я або спробував їх, або не розумію. Зі сказаним тут нічого не йде ...

Я намагаюся отримати веб-програму MVC, яка працює в моєму IIS. На жаль, я абсолютно застряг у цій помилці:

HTTP Error 500.19 - Internal Server Error

The Request page cannot be accessed becasue the related configuration data for 
the page is invalid.

Module: IIS Web Core
Notification: BeginRequest
Handler: Not yet determined
Error Code: 0x80070005
Config Error: Cannot read configuration file due to insufficient permissions
Config File: \foo\web.config
Request URL: http://localhost/WEBAPP
Logon Method: Not yet determined
Logon User: Not yet determined

Config Source
-1:
0:

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

Якщо хтось має будь-яку інформацію або зможе допомогти мені в цьому, це буде дуже вдячне. Дякую!


4
У мене була та сама проблема у версії VS 2015 Community і виправте її перезапуском VS.
HENG Vongkol

1
Моя проблема вирішена сильфон повідомлення: stackoverflow.com/a/9239936/2155778
Zolfaghari

@HENGVongkol Дякуємо, що поділились своїм рішенням, яке допомогло мені, витративши багато часу на з’ясування причини проблеми.
nam

У моєму випадку проблема під час локального запуску, Панель управління -> Програми -> IIS Express -> відновлення, вона автоматично скине налаштування IIS Express, які спрацювали
Syed Mohamed

Відповіді:


34

У цьому блозі msdn: Усунення помилок HTTP 500.19 Помилки в IIS 7 у sceanrio 8 для коду помилки 0x80070005 (E_ACCESSDENIED - Загальна помилка відмовлена ​​у доступі) там сказано:

Grant Read permission to the IIS_IUSRS group ...
.... the worker process identity (and/or the IIS_IUSRS group) needs at least Read access to the directory so that it can check for a web.config file in that directory.


1
А що, якщо в цьому IIS Ipm в, немає групи IIS_IUSRS?
Ricker Silva

Вам потрібно визначити особу робочого процесу, тобто акаунта користувача, який знаходиться у службі w3svc
оновлення

Так, я перевірив, і оскільки це веб-служба, розміщена в IIS, користувачем був обліковий запис, призначений пулу програм. Оскільки це був сервер тестування, я пішов із LocalSystem
Рікер Сілва,

2
Примітка: Я налаштував права в IIS-Manager, клацнувши правою кнопкою миші на віртуальному каталозі та натиснувши кнопку Змінити права доступу, але вона все ще не працювала. Після цього я перевіряв файли в моєму веб-каталозі, і виявилося, що права доступу до всіх файлів змінилися .... але web.config! Я змінив права на web.config безпосередньо, тепер це працює.
Мартін Браун,

125

У моєму випадку мені потрібно було встановити модуль перезапису URL-адреси IIS 2.0, оскільки він використовується в web.config, і це був перший раз запущений сайт на новій машині.


1
Так. Я також. Після встановлення я тепер можу редагувати конфігурацію в диспетчері IIS.
Kris Krause

1
Ага так! Дякую @Josh D!
Steve Bauman

Так, це траплялося зі мною неодноразово, і я продовжую забувати
JayPex

Ідеально!
Даремно витратив

це була проблема, трохи більш дружнє повідомлення про помилку могло заощадити багато часу
Chethan

20

Будь ласка, виконайте цей крок

  1. Перейдіть до панелі керування
  2. Перейдіть до Програми та функції
  3. Увімкніть або вимкніть функцію вікна
  4. Перейдіть до вузла Інформаційної служби Інтернету
  5. Слідкуйте за послугами Всесвітньої веб-мережі
  6. Тоді перевірте функцію розробки додатків
  7. Тоді перевірте всі Node Special Asp або Application Framework, такі як Asp.net 3.5 або ASP.NET 4.5, що у вас є

Щоб бути зрозумілим, яке з "Тоді перевірте всі Node Special Asp або Application Framework, як Asp.net 3.5 або ASP.NET 4.5, що у вас є" стосується конкретного повідомлення про помилку? Які з них потрібні? Якщо це залежить від того, що я роблю, як мені це дізнатись?
SomeoneElse

Як це зробити на Mac?
Ahmet Yılmaz

19

Я виправив це, перезапустивши VS.

Я відкрив файл конфігурації в іншому екземплярі VS, і, мабуть, щось зійшло з розуму ...


я просто закрив усі екземпляри, такі як перезапуск проекту, вихідне дерево, після повторної побудови це добре працює на моєму кінці.
Rejwanul Reja

8

** Увімкніть ** Усі функції в розділі ** Особливості розробки програм ** та оновіть ** IIS **

Перейти до функцій Windows увімкнено або вимкнено. Увімкніть усі функції в розділі «Особливості розробки додатків» та оновіть службу IIS . Це працює


Я не думаю, що увімкнути ВСЕ це - хороша ідея. Я можу уявити, що якщо ASP.NET було вимкнено, це може спричинити проблему, але я не вірю, що, наприклад, "серверна сторона включає", ймовірно, буде доречною.
SomeoneElse

2

У мене була підпапка з назвою web.config, перейменувавши цю папку, вирішила проблему


1

Моя проблема полягає в тому, що я випадково встановив інший сайт як сайт за замовчуванням, а не за замовчуванням IIS (відкривши інший проект.) Мені довелося видалити сайт за замовчуванням і перенаправити його у місце C:\inetpub\wwwrootза замовчуванням, використовуючи логін свого домену як користувача, якого потрібно обходити просто відкрив мій проект, який я намагався запустити (той, що демонструє цю помилку), і все це було шалено Доррі


1

Я отримував доступ до проекту з віртуальної машини, обмінюючись папкою проекту з приймаючої ОС (Windows 10). Спробувавши багато рішень і навіть забезпечивши дозволи для IIS_IUSRS, я все одно міг це вирішити.

Врешті-решт, я скопіював цю папку з хосту на шлях в гостьовій ОС, і тепер я можу правильно запускати той самий проект ASP.NET. Але я також продовжував і давав IIS_IUSRSгрупі повний контроль над цим новим режимом ... можливо, це насправді не потрібно в цьому випадку? Мені лінь перевірити цей банкомат.


1

Для повноти відповідь на тег Asp.Net Core у web.config може спричинити помилку також може бути вирішенням проблеми. Якщо пакет хостингу .NET Core Windows Server не інстальовано, IIS не може розпізнати розділ aspNetCore у web.config. https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1#install-the-net-core-hosting-bundle стверджує, що це пряме завантаження до поточної версії.


1

Я намагався запустити сайт .net core 3.1 з IIS 10 на Windows 10 pro box і отримав цю помилку. Для його вирішення було зроблено наступне.

Спочатку увімкніть наступну функцію iis.

Увімкніть функції IIS

Потім перейдіть за посиланням нижче.

https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis/?view=aspnetcore-3.1#install-the-net-core-hosting-bundle

Встановіть .net core hosting bundle.

Пряме посилання є

https://dotnet.microsoft.com/download/dotnet-core/thank-you/runtime-aspnetcore-3.1.2-windows-hosting-bundle-installer

Я також встановив .net core sdk та час роботи . Але це не вирішило проблему.

Що мало значення, це основний пакет хостингу .net.


+1 Я відразу знехтував тим, що, на мою думку, було дуже елементарною та наївною відповіддю. Потім я побачив ".NET Core Hosting Bundle". Зачекай - я не знав, що існує окреме розгортання для хостингу Windows Server; Я розмістив там середовище виконання ASP .NET Core, але не цей інший пакет хостингу. FWIW - виправив мій HTTP 500 швидким подвійним клацанням - прислухайтесь.
Раб

0

Якщо папка отримується з іншого, а хост-файл вже генерується в ProjectName\.vs\configпапці, тоді вона конфліктує з новою і отримує цю помилку.
Тож видаліть файл хосту з ProjectName\.vs\configі перезапустіть проект ще раз. Це працювало для мене


0

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




0

У моєму випадку у мене був встановлений .Net core SDK 3.1.403. Тож я встановив відповідний .Net Core Windows Server Hosting, який є .NET core 3.1.9 - Хостинг Windows Server.


0

У мене виникла ця помилка з Visual Studion 2019, моїм проектом був NopCommerce 4.30, який є проектом ASP.Net Core 3.1. Я додав сторінку "gouden-munten-buitenland" як стартову сторінку, і я отримав помилку лише при переході на цю сторінку. Виявилося, що Visual Studio згенерував недійсний applicationHost.config:

<applicationPools>
    ....
    <add name="gouden-munten-buitenland AppPool" autoStart="true" />
    <add name="gouden-munten-buitenland AppPool 2" autoStart="true" /> <!-- WRONG -->
    <add name="Nop.Web AppPool" managedRuntimeVersion="" />
    <applicationPoolDefaults managedRuntimeVersion="v4.0">
    <processModel loadUserProfile="true" setProfileEnvironment="false" />
    </applicationPoolDefaults>
</applicationPools>

і

<sites>
    ....
    <site name="Nop.Web" id="2">
    ...
    <application path="/gouden-munten-buitenland/gouden-munten-buitenland" applicationPool="gouden-munten-buitenland AppPool">
        <virtualDirectory path="/" physicalPath="C:\Usr\Stephan\Wrk\Kevelam\kNop.430\Presentation\Nop.Web" />
    </application>
    <application path="/gouden-munten-buitenland" applicationPool="gouden-munten-buitenland AppPool 2">
        <virtualDirectory path="/" physicalPath="C:\Usr\Stephan\Wrk\Kevelam\kNop.430\Presentation\Nop.Web" />
    </application> <!-- WRONG -->
    ....
    </site>
    ...
</sites>

Я видалив вузли, визначені як «НЕПРАВИЛЬНІ», і тоді це спрацювало.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.