Ошибка сервера ASP.net в приложении '/' - PullRequest
1 голос
/ 09 февраля 2012

У меня есть пользователи, постоянно получающие эту ошибку на нашей домашней странице:

Server Error in '/' Application.
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".

<!-- Web.Config Configuration File -->

<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>


Notes: 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> configuration tag to point to a custom error page URL.

<!-- Web.Config Configuration File -->

<configuration>
    <system.web>
        <customErrors mode="RemoteOnly" defaultRedirect="mycustompage.htm"/>
    </system.web>
</configuration>

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

<customErrors mode="On" defaultRedirect="~/error.aspx" redirectMode="ResponseRewrite">
    <error statusCode="500" redirect="~/error.aspx" />
</customErrors>

Все остальные ошибки на сайте, похоже, прямо указывают на error.aspx, кто-нибудь знает, почемуэта ошибка будет происходить и как я могу ее поймать?

1 Ответ

3 голосов
/ 09 февраля 2012

Вы должны заглянуть в Журнал приложения в окне просмотра событий , чтобы увидеть, что является настоящим сообщением об ошибке.Как только вы найдете сообщение об ошибке - вы можете определить, почему оно не перенаправляет.

Другой вариант ( хотя и опасный для общедоступных сайтов ) - изменить обработчик ошибок, чтобы отобразить реальное сообщение об ошибке страссировка стека, чтобы вы могли устранить проблему ( customErrors mode = 'Off' ).Затем пользователи могли бы доставить вам фактическую ошибку вместо общей страницы ошибок выше.

<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>
...