Как решить «Ошибка HTTP 500.19 - Внутренняя ошибка сервера» на IIS7.0 [закрыто]


199

Что вызывает эту ошибку, как я могу это исправить?

Подробная информация об ошибках
Модуль IIS Web Core
Notification BeginRequest
Обработчик еще не определен
Код ошибки 0x8007052e
Ошибка конфигурации Не удается войти локально в C: \ inetpub \ wwwroot как администратор пользователя с паролем виртуального каталога
Файл конфигурации недоступен (изоляция конфигурации)
Запрошенный URL http: // 192.168.0.3:80/
Физический путь C: \ inetpub \ wwwroot
Метод входа в систему Еще не определен
Пользователь входа в систему Еще не определен

Конфиг Источник

<application path="/" applicationPool="PS-Extranet">
    <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" userName="administrator" password="[enc:AesProvider:PrISRz2ggJH4bV46ktObfCSh91Y/yF9pAoLmH7eCnj0=:enc]" />
</application>

1
«Реальное» сообщение об ошибке обычно находится где-то на странице. Вы должны опубликовать полное содержание страницы с ошибкой, которую получаете, если хотите получить помощь по этому вопросу.
Джон Фаррелл

1
Просто хочу кое-что отметить для людей, которые выполняют поиск в Google и задают этот вопрос, если это не очевидно: я использую VS2012 с IISExpress. Я случайно удалил папку в папке c: / Users / [ИМЯ ПОЛЬЗОВАТЕЛЯ] / MyDoocuments / MyWebsites / [ВЕБ-САЙТ]. Это была пустая папка (которую почему-то мой мозг сказал удалить). Как только я восстановил его из корзины, все было хорошо. Извините за комментарий, но он казался лучше, чем ответ, который должен был оказаться внизу и, возможно, не увиденным. Это просто альтернатива, если здесь ничего не работает.
REMESQ

2
Посмотрите, работает ли это: (1) зайдите в диспетчер IIS, (2) откройте окно «Дополнительные настройки» для веб-сайта, (3) установите учетные данные физического пути для пользователя-администратора.
Джереми Рэй Браун


Я знаю его старый пост, но это то, что сработало для меня (Простое решение), я просто закрыл и снова открыл визуальную студию, и это сработало. У меня была точно такая же ошибка. Когда я проверил мою командную строку git, я увидел, что .vs/config/applicationhost.configфайл был изменен и у него был путь обновления виртуального каталога.
S52

Ответы:


145

Похоже, что учетная запись пользователя, которую вы используете для своего пула приложений, не имеет прав на каталог веб-сайта, поэтому она не может читать настройки оттуда. Проверьте пул приложений и посмотрите, под каким пользователем он настроен. Проверьте каталог и посмотрите, есть ли у этого пользователя соответствующие права на него. Пока вы это делаете, проверьте журнал событий и посмотрите, не зарегистрировала ли IIS более подробную диагностическую информацию.


Правильно, Брюс, решил сегодня утром, похоже, что системный администратор изменил пароли учетных записей на серверах, но не смог изменить логин учетной записи пользователя для виртуального каталога. Похоже, что ошибка показала всю ночь, когда у сайта был период бездействия, закрывающий процесс подачи заявки. Спасибо за ответ
Стюарт

Для меня это был IT-отдел, который сменил пароль на учетной записи службы.
JanBorup

@ Брюс: я работаю на localhost и получаю ту же ошибку. Что делать в этом случае
hud

29
Принятый ответ на этот вопрос хороший, решение чего-то обычно вызывает проблемы, но для тех из нас, кто испытывает более неясную проблему, ответ Джоми Джона в настоящее время имеет больше голосов. Это касается тега <rewrite> в файле web.config. Я комментирую это, потому что это долгий путь вниз по странице, и я почти пропустил это.
Чад МакГрат

4
Совет @ChadMcGrath Pro: сортировка ответов по голосам (настройка останется
неизменной

368

У меня была та же проблема, но причина была в другом.

В моем web.config было правило модуля перезаписи URL, и я также не установил модуль перезаписи URL. После установки модуля перезаписи URL эта проблема решена.


69
+1000 абсолютно сининое сообщение об ошибке из-за того, что у него не найден раздел конфигурации
Chris Marisic

4
@ChrisMarisic - да и нет. Сообщение об ошибке не является полезным, но оно является правильным. Модуль перезаписи URL отсутствует, поэтому раздел конфигурации <urlRewrite> недопустим, поэтому конфигурация искажена технически. Теперь, почему они не могут просто выплюнуть лучшую ошибку, мне не под силу.
Уайетт Барнетт

15
Непонятно в этом сообщении об ошибке то, что когда он показывает источник конфигурации, он показывает (по крайней мере, у меня) пустое окно со строками кода «-1» и «0». То, что он должен показать, это часть «<rewrite>» в вашей конфигурации, кричащая вам, что она не знает, что это такое ...
JoeCool

11
Я хотел бы, чтобы у Microsoft было лицо, чтобы я мог ударить его по бесполезному сообщению об ошибке.
Yatrix

2
вау, майкрософт, еще один удар и мисс
schmoopy

102

На Windows 10 мне пришлось установить ASP.NET 3.5и ASP.NET 4.6под Internet Information Services(другие поля автоматически проверяются):

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


Для меня это было первое решение, когда DNN работал как приложение, приложение к виртуальному каталогу с «классической» настройкой appPool. Теперь я могу запускать приложения PHP и ASPX в IIS. Спасибо за начало огня.
Klewis

1
Большое спасибо. Я пробовал так много решений, но не повезло, и я прокрутил здесь и попробовал предложенное вами решение, и оно сработало для меня. Хорошая работа #joshcomley
nativegrip

1
И вот почему вам нужно прочитать ВСЕ предлагаемые ответы! Спасибо, Джош!
Конор Галлахер

СПАСИБО! На новом сервере, который я настраивал, я получал бесполезное сообщение «Ошибка HTTP 500». В лог-файле я также увидел sc-substatus 19 и sc-win32-status 33. Добавление этих функций dev исправило мое.
Боб Кауфман

это была проблема, спасибо!
smedasn

74

Наконец я получил решение для моей проблемы. Учетная запись asp.net не отображается в диспетчере IIS, поскольку я не установил ее флажок в IIS, чтобы сделать это в Windows 7, следуйте инструкциям

  1. Открыть панель управления
  2. Нажмите на ссылку «программа» (не удалять программы)
  3. Нажмите на ссылку «включить / выключить функции Windows»
  4. во всплывающем окне найдите «IIS служб Интернета» и разверните его узел
  5. Разверните узел «Всемирная паутина»
  6. Разверните узел «Функции разработки приложений»
  7. установите флажок «ASP.NET»
  8. Затем нажмите кнопку ОК

Теперь вы увидите учетную запись Asp.net в диспетчере IIS и по умолчанию вы увидите учетную запись IIS. Теперь вам следует переместить веб-сайт asp.net из «моего документа» в другое место, к которому у IIS есть разрешение на доступ (к любому разделу вашего компьютер) Теперь просмотрите ваш сайт в диспетчере IIS, и он должен работать.


Это полностью сработало для меня! Спасибо! Моя проблема заключалась в том, что ASP, ASP.NET 3.5 и ASP.NET 4.5 не были включены. Поэтому я проверил / включил их, и теперь это работает, спасибо!
doncadavona

Прямо к делу. Спасибо!
Разко

67

Эта ошибка возникла после изменения пароля администратора домена.

После использования нескольких настроек я в конечном итоге обнаружил, что в приложении по указанному ниже пути, поскольку он был настроен специально для использования учетной записи администратора домена, а не сквозной аутентификации (кто знает почему).

Диспетчер IIS -> Основные настройки -> Подключиться


Исправлена ​​также и моя проблема (была настроена на работу как пользователь, которого мы отключили, поэтому мы переключились обратно на сквозной).
Джош

2
Я знаю, что этот ответ старый, но это решило и мою проблему.
гладкие захваты

20

вам нужно сделать один шаг:

run->cmd

run "c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i"

Это оно


1
Запустите эту команду от имени администратора
user2819666

В Windows 10 выдает следующее сообщение об ошибке: Этот параметр не поддерживается в этой версии операционной системы. Вместо этого администраторам следует установить / удалить ASP.NET 4.5 с IIS8, используя диалоговое окно «Включение / выключение компонентов Windows», средство управления диспетчером сервера или средство командной строки dism.exe. Для получения дополнительной информации см. Go.microsoft.com/fwlink/?LinkID=216771 . Завершена установка ASP.NET (4.0.30319.0) без изменения существующих веб-приложений для использования этой версии ASP.Net.
Шридхар Р Кулкарни

Лучше ... если бы вы могли дать небольшое объяснение этой команде.
eRaisedToX

15

Испытал эту проблему сегодня и решил ее. Кто-то установил «Идентификационные данные пути» для «Веб-сайта по умолчанию» в IIS для запуска от имени определенного пользователя. Этот же пользователь изменил свой пароль либо из-за истечения срока действия пароля, либо из-за обычного изменения. Настройка «Веб-сайт по умолчанию» для подключения в качестве «пользователя приложения» через опцию основных настроек решила его для меня


Это было для меня. Спасибо! Мои учетные данные пути были установлены для моей учетной записи, но ранее этим вечером я перебрал свой пароль и был заблокирован на 15 минут. Восстановление моего имени пути / имени пользователя и пароля сделали свое дело. Хммм, так как мой аккаунт был разблокирован, мне приходит в голову, что, если бы я только что отказался от сервиса, это могло бы помочь. Anyhoo, спасибо!
Патрик Керхер

Это февраль 2015 года, и ошибки IIS, как всегда, сбивают с толку. Спасибо!
Уоррен П

13

Вы, вероятно, измените свой пароль NT.

Откройте IIS -> щелкните правой кнопкой мыши свое приложение -> управлять приложением -> расширенные настройки -> учетные данные физического пути.

удачи


8

В моем случае эта ошибка появляется после изменения решения папки.

Я решаю проблему, зайдя в свойства моего проекта и воссоздав свой виртуальный каталог.

Щелкните правой кнопкой мыши проект> Свойства> Интернет> В разделе «Серверы» нажмите «Создать виртуальный каталог»

Появится сообщение о том, что виртуальный каталог был создан в другом месте, и он изменит его.


7

Для меня, мне нужно было активировать активацию Http в .Net функции в «Добавить / удалить компоненты Windows»


6

Работал хорошо, но не на основании предложений выше. В моем случае я получаю сообщение об ошибке 500 при запуске iis7 на сервере Windows 2008 в домене. Просто добавил нового пользователя в домен и, по сути, разрешил чтение / выполнение доступа к виртуальному каталогу или папке. Убедитесь, что виртуальная папка> основные параметры> Подключиться как> Учетные данные пути задана для пользователя с доступом для чтения / выполнения. Вы можете проверить настройки, и аутентификация и авторизация должны работать. Ура!


5

Прямо сейчас у меня была эта ошибка и я решил ее. Ваш URL может совпадать с созданным виртуальным каталогом.

Вы должны проверить виртуальные каталоги, в моем примере я нашел в applicationhost.configследующей строке:

<application path="/" applicationPool="Clr4IntegratedAppPool">
    <virtualDirectory path="/admin/roles" physicalPath="C:\..." />
</application>

Я попытался открыть страницу с помощью url ( http://localhost/admin/roles) AdminControllerи Rolesдействия и получил эту ошибку.


4

Для других я получил подобное сообщение об ошибке из-за попытки запустить приложение .Net 4 в пуле приложений .Net 2. Изменение версии .Net FX для пула приложений исправило это для меня.


4

У меня была похожая ошибка при установке php 5.3.3 с кодом ошибки 0x80070020 с указанием нескольких строк в файле web.config в моем корневом каталоге www (не в стандартном корневом каталоге).

Решение, хотя и грубое, сработало отлично. Я просто удалил файл web.config и теперь все работает. Я потратил ЧАСЫ, пробуя другие решения безрезультатно.

Если кто-то думает, что это глупо, пожалуйста, дайте мне знать. Если кто-то потратил столько же времени на вырывание волос, попробуйте и посмотрите (после резервного копирования файла, конечно)

С уважением FEQ


4

Возникла та же ошибка, и исправление учетных данных в пуле приложений IIS не помогло. Я наконец-то исправил ошибку в IIS, выбрав свой веб-сайт в разделе «Веб-сайт по умолчанию», «Дополнительные параметры» -> «Физические данные пути» -> «Конкретный пользователь», и повторно ввел учетные данные для пользователя пула приложений, затем перезапустил IIS, и ошибка исчезла, и мой веб-сайт пришел успешно.


да, так же. iis7.5 на 2008R2. пришлось сменить пароль из-за локальных правил сложности учетной записи и не знал, что он также используется в IIS. выследил это с этим комментарием и купе других здесь. но этот самый конкретный.
bytejunkie

4

Веб-сайт по умолчанию по тоже нужно управлять:

1. На веб-сайте по умолчанию -> basicSettings -> connect as, измените его на нужного пользователя.

2. измените Идентификатор applicationPool, который связан с веб-сайтом по умолчанию

g.luck


2

Похоже, это не было проблемой с разрешением - попытался предоставить учетной записи IIS_IUSRS полный контроль над всем в веб-сервисе, просто чтобы посмотреть, не было ли это причиной. Исправление оказалось воссоздать приложение, содержащее веб-сервис (то есть фактический .svc) в IIS


2

Если это сложно, когда вы пытаетесь получить доступ к панели администратора Joomla, просто проблема с именем пользователя и паролем! Вам просто нужно обновить jos_user в вашей базе данных joomla.

Перейдите в каталог вашего веб-сайта joomla и откройте файл configuration.php с блокнотом или блокнотом, чтобы показать, какое имя базы данных использует ваш сайт администратора joomla. Вы должны найти строку, которая имеет:

public $user = 'joomlauser251';           //MySQL username

В моем случае joomlauser251это имя моей БД.

Войдите в свой mysql:

 mysql -uyourusername -pyourpassword

Выберите базу данных для вашей Joomla:

use joomlauser251;

Изменить пароль для администратора:

UPDATE jos_users SET password=MD5(‘NewPassword’) WHERE username=’admin’;

И повторите попытку снова.

Вот и все !!!


2

В моем случае я нашел ссылку на старый пароль учетной записи домена в applicationHost.config в разделе «Настройки по умолчанию для виртуального каталога».


2

так легко найти файл «applicationHost.config» в Windows -> System32 -> inetsrv -> config 1. резервное копирование «applicationHost.config» в другое имя файла 2. открыть файл «applicationHost.config» очистить данные и сохранить 3. открыть браузер и Вызов URL внутреннего сайта, готово.


2

Если вы используете новую выделенную учетную запись пользователя ... Также стоит проверить, что срок действия пароля для этой учетной записи не истек, так как это также вызовет проблему с разрешениями 500.19.


1

Когда я получил 500.19, я дал IIS_IUSRSполные права доступа для упомянутого web.config и для папки проекта. Это решило проблему.

Вы можете дать разрешения по

  1. щелкните правой кнопкой мыши папку / файл
  2. выбрав вкладку «безопасность»
  3. добавьте пользователя IIS_IUSRS- не забывайте i перед USRS и не пишите "e", как в USERS

1

Приложения ASP.Net поставляются предварительно с разделом обработчиков в web.config. По умолчанию это установлено только для чтения при делегировании объектов в IIS. Посмотрите в IIS Manager

1. Перейти к IIS Manager и нажмите «Имя сервера».

2. Перейдите в раздел Управление и нажмите Делегирование функций .

3.Выберите сопоставления обработчиков, которые должны быть настроены только для чтения .

4. Измените значение для чтения / записи, и теперь вы можете решить проблему


1

У меня есть еще одна вещь, чтобы сказать об этом. С одним и тем же кодом HTTP Error вы все равно можете иметь несколько разных ошибок, так как одна из них была опубликована здесь в оригинальном описании вопроса. Например: после того, как я отредактировал Web.Configфайл проекта ASP.NET, у меня было

Код ошибки 0x8007000d

«Допускается только один элемент <configSections>. Это должен быть первый дочерний элемент корневого элемента <configuration>»

Как говорится, вы НЕ ДОЛЖНЫ вставлять свои собственные элементы XML перед <configSections>частью Web.Configфайла. После того, как я вставил свой фрагмент после конечного тега <configSections>, он работал просто отлично.



1

Мое решение таково,

  1. просто удалите поврежденную папку.
  2. Затем заново создайте папку.

Похоже, что поврежденная папка была создана до установки IIS. Если вы снова создали папку, она будет работать правильно.


1

Я получил эту ошибку после удаления служб обновления Windows Server (WSUS) с компьютера, на котором работает IIS. Очевидно, что удаление WSUS может нарушить настройку IIS на сервере, что сделает недоступным другое веб-приложение, установленное на том же сервере.

Я нашел решение проблемы здесь .


1

Для веб-сайтов ASP.NET Core эта общая ошибка также возникает, если у вас не установлен модуль HttpPlatformHandler, см. Этот ответ для получения дополнительной информации.


1

В моем случае значение ключа было неверным в Web.configфайле:

    <defaultDocument>
        <files>
            <add value="Portal.htm" />
        </files>
    </defaultDocument>

когда я изменяю значение на «Portal.html», это работает.


0

Я получил эту ошибку после обновления с Visual Studio 2013 до 2015. После небольшого поиска и проб различных исправлений я обнаружил, что проблему можно решить, удалив из файла web.config следующее:

<staticContent>
    <mimeMap fileExtension=".less" mimeType="text/css" />
</staticContent >

Видимо staticContent устарел сейчас?

Источник

Редактировать 1

Такого рода IIS не мог обслуживать файлы .json при развертывании программы. Если вы сделаете это, вы должны будете повторно добавить .json (application / json) к MIME-типам вашего сайта в IIS. Вот еще немного информации: http://www.iis.net/configreference/system.webserver/staticcontent/mimemap

Редактировать 2

Я заметил, что в моей ситуации вышеуказанное решение edit 1 работает только временно. После повторного развертывания запись удаляется. Итак, я переместил mimeMap XML в Web.Release.config. Работает нормально сейчас.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.