500.19 Ошибка только в режиме веб-сада

Мое веб-приложение ASP.NET работает нормально под IIS 7.5. Но я хочу убедиться, что он готов к запуску в веб-ферме. Так что я включил веб-сад на моей машине разработчика. (Установите Максимальное количество рабочих процессов =2 в пуле приложений.)

Навигация по сайту проходит нормально, но при любом запросе AJAX я получаю 500,19 ошибок. Ошибка как:

Запрашиваемая страница недоступна, потому что связанные данные конфигурации для этой страницы недействительны.

Невозможно добавить повторяющуюся запись коллекции типа "ошибка" с объединенными ключевыми атрибутами "statusCode, subStatusCode", соответственно установленными в "404, -1"

В моем веб-конфигурации у меня есть это:

<system.webServer>
  <httpErrors>
    <error statusCode="404" path="Home/NotFound" />
  </httpErrors>

Выглядит хорошо для меня, и я думаю, это нужно. Но ради интереса я удалил раздел httpErrors. Тогда я получаю:

невозможно подключиться к удаленному серверу

Конечно, я смотрел на устранение ошибок 500.19 MS. Но я предполагаю, что ошибка - красная сельдь. Эта проблема связана с пулом приложений, моим кодом или чем-то иным, чем то, что говорится в сообщении. Как я уже говорил, все прекрасно работает с 1 Max Worker Process.

Есть идеи?

ОБНОВЛЕНИЕ: я понял, что вторая ошибка, о которой я упоминал, "Невозможно подключиться к удаленному серверу", была настоящей ошибкой, вызванной моим приложением. Таким образом, элемент в web.config стал причиной ошибки 500.19 (которая скрывала настоящую ошибку). И, возможно, мне не нужен этот элемент, потому что у меня есть аналогичный элемент в system.web, который, похоже, сам по себе имеет желаемый эффект.

Задача решена. Тем не менее, я до сих пор удивляюсь, почему нет проблемы в режиме одного рабочего, а она не работает в режиме веб-сада?

1 ответ

Решение

В вашем web.configЕсли вы изменяете пользовательские ошибки, вы должны сначала удалить существующую пользовательскую ошибку, например:

<httpErrors>
    <remove statusCode="404" subStatusCode="-1" />
    <error statusCode="404" path="http://google.com" responseMode="Redirect" />
</httpErrors>

IIS7 довольно хорош, и подсказка часто в сообщении об ошибке:

Невозможно добавить повторяющуюся запись коллекции типа "ошибка" с объединенными ключевыми атрибутами "statusCode, subStatusCode", соответственно установленными в "404, -1"

Для меня это было исправлено установкой C++ redistributable 2015 14.0.23026

Другие вопросы по тегам