#asp.net #iis #iis-7 #iis-8
#asp.net #iis #iis-7 #iis-8
Вопрос:
Я пытаюсь настроить пользовательскую ошибку для своего веб-сайта, которая отлично работает на моем локальном компьютере, но на сервере происходит сбой. Ниже приведен мой код.
<system.web>
<customErrors mode="On" defaultRedirect="~/Pages/Error.aspx">
<error statusCode="404" redirect="~/Pages/PageNotFound.aspx"/>
</customErrors>
</system.web>
<system.webServer>
<httpErrors errorMode="Custom" existingResponse="PassThrough"defaultResponseMode="ExecuteURL">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="~/Pages/PageNotFound.aspx" responseMode="ExecuteURL"/>
</httpErrors>
</system.webServer>
Я использую IIS 8 на своем локальном сервере и IIS 7 на действующем сервере. Должен ли я каким-либо образом изменить этот код, чтобы он работал?
Кроме того, когда я пытаюсь получить доступ к странице, например: xyz.aspx, она не показывает ничего, кроме белого окна браузера.
Комментарии:
1. сбой означает, что у вас ошибка или? на каком уровне вы добавили этот корневой веб-сайт конфигурации, веб-сайт?
2. нет, я не получаю никаких error..it дайте мне только белый пустой экран… и файл конфигурации находится в корневой папке web
Ответ №1:
Проверьте, есть ли у вас более одной веб-конфигурации, или проверьте, правильно ли ваш файл веб-конфигурации находится внутри вашего проекта.
Комментарии:
1. нет, у меня есть onyy 1 web.config .. и файл конфигурации также .. правильно размещен внутри project…as веб-сайт работает нормально..
2. тогда где находится ваш файл web config.? внутри какой-либо папки или проекта?
3. Используете ли вы структуру MVC?
4. Попробуйте это, если вы используете MVC. <system.web> <customErrors mode=»On» defaultRedirect=»~/site/wwwroot/404.html » /> <отладка компиляции=»true» targetFramework=»4.5″> <сборки>/> </сборки> </компиляция> </system.web>
5. Опция «Только удаленный» покажет ошибку в локальном, она скрывает сообщение об ошибке только для удаленного пользователя. попробуйте файл конфигурации, который предназначен только для локального, и измените версию и целевую платформу в соответствии с вашей версией .Net.