MVC3 Обработка ошибок - не работает для 500 ошибок типа в AZURE - PullRequest
0 голосов
/ 07 июля 2011

Есть ли кто-нибудь, кто имеет работающее решение для обработки ошибок MVC3 в Azure с помощью веб-сервера IIS7. Обратите внимание, что это должна быть эта комбинация. Я вижу много ответов, но не так много для пользователей веб-ролей Azure. Должно быть, я посмотрел более 50 веб-страниц и ничего не нашел, кроме ссылки на

<configuration>  
  <system.webServer>  
    <httpErrors existingResponse="PassThrough"/>  
  </system.webServer>  
<configuration> 

Что, похоже, все еще не работает и не решает мою проблему

Мой Web.config настроен следующим образом:

<customErrors defaultRedirect="~/error/notfound" mode="RemoteOnly">
  <error statusCode="404" redirect="~/error/notfound"></error>
</customErrors>

Я проверил на сервере, и все в порядке. Так что теперь, когда я перехожу на страницу, которая, как я знаю, выдаст исключение 500, я получаю следующее:

90b37.cloudapp.net/Error/NotFound?aspxerrorpath=/

Похоже, что оно пошло к ПРАВИЛЬНОМУ контроллеру ошибок и просмотру, но затем страница меняется, и я получаю стандартный вывод IIS (или вывод MVC). В любом случае, я хочу увидеть содержимое моей страницы NotFound, которую я вижу локально, когда customerror установлен в значение «On».

Это то, что я получаю, но не то, что я хочу:

The current error page you are seeing can be replaced by a custom error 
page by modifying the "defaultRedirect" attribute of the application's 
<customErrors> etc ...

Что очень странно, потому что, очевидно, он просто попытался перенести меня на перенаправленную страницу. Я надеюсь, что кто-то может помочь. Кто-нибудь знает, что генерирует фрагменты страницы, которые здесь выше? Это IIS или какая-то часть MVC? Я провел последний день на этом и ничего не получил.

1 Ответ

0 голосов
/ 08 июля 2011

Вы перенаправляете файл http 404. Не найден.

Но ваша ошибка - внутренняя ошибка http 500.

Таким образом, пользовательская конфигурация ошибок не перехватывает эту ошибку.

Вам нужно поймать код состояния 500.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...