Не удается увидеть реальное сообщение об ошибке приложения ASP.NET? - PullRequest
3 голосов
/ 30 марта 2012

У меня есть почти пустой веб-сайт ASP.NET, который я создал (1 страница). Я намеренно закодировал ошибку деления на ноль на Page_Load. Если для пула приложений установлено значение «ASP.NET 4.0 Pipeline: Integrated», я не вижу ошибки загрузки страницы, а вместо этого получаю:

Ошибка выполнения

Описание: на сервере произошла ошибка приложения. Электрический ток Пользовательские настройки ошибок для этого приложения предотвращают детали ошибка приложения от просмотра.

Папка установлена ​​как приложение в IIS, и правильные записи web.config для отображения ошибок присутствуют, но по какой-то причине я не могу .NET показать мне правильное сообщение об ошибке, если только Я изменяю пул приложений на ASP.NET Classic . Зачем нужен «классический» режим? Я убираю волосы, так как все другие сайты на той же машине работают нормально (IIS7), и, тем не менее, любой новый сайт, который я создаю, похоже, имеет ту же проблему.

Любая идея, что может быть причиной того, что IIS либо не распознает эту папку, является приложением, либо иным образом не отображает правильное сообщение об ошибке?

EDIT: Web.Config - это:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.web>
        <customErrors mode="Off" />
        <compilation debug="true" targetFramework="4.0" />
    </system.web>
</configuration>

1 Ответ

1 голос
/ 30 марта 2012

ОК, после долгого поиска и сравнения настроек с работающей машиной, я обнаружил, что ответ на самом деле лежит в настройках пула приложений .NET 4.

Как только я установил флажок «Включить»32-разрядные приложения »(см. Скриншот) на экране расширенных настроек IIS для пула приложений все стало работать нормально.Я могу только предположить, что где-то установлено что-то, что требует этого параметра для корректной работы пула приложений, и это мешало мне увидеть реальное сообщение об ошибке.Мне все еще было бы интересно узнать, узнает ли кто-нибудь, почему это решает проблему или как я могу отобразить «реальное» сообщение об ошибке, которое должно отображаться при попытке использовать этот пул приложений без установленного флажка «Включить 32-разрядные приложения».

IIS App Pool Advanced Settings

...