Выключите customerrors в файле config сервера: customerrors в файле config сервера что это

Содержание

customerrors в файле config сервера что это

На чтение 2 мин. Просмотров 218 Опубликовано

Я получаю следующую ошибку при попытке подключиться к своему серверному приложению с использованием удаленного взаимодействия:

При подключении к удаленному серверу возникла проблема:
Сервер обнаружил внутреннюю ошибку. Для получения дополнительной информации отключите customErrors в файле .config сервера.

Это код моего серверного приложения:

Кажется, он работает с первого раза, но если серверное приложение не перезапускается, возникает ошибка.

Я думаю, что-то не очищается должным образом, но я не уверен, что, поскольку customError все еще включен.

1110 Любые идеи, с которых я начинаю. Благодаря.

[РЕДАКТИРОВАТЬ] — Благодаря Гульзару я изменил свой код выше для следующего, и теперь отображаются ошибки:

Я получаю следующую ошибку при попытке подключиться к своему серверному приложению с использованием удаленного взаимодействия:

Возможно, возникла проблема при подключении к удаленному серверу:
Сервер обнаружил внутреннюю ошибку. Для получения дополнительной информации отключите customErrors в файле .config сервера.

Это код моего серверного приложения:

Кажется, это работает с первого раза, но если приложение сервера не будет перезапущено, возникает ошибка.

Я предполагаю, что что-то не очищается должным образом, но я не уверен, что так как customError все еще включен.

Любые идеи, с которых я начинаю. Спасибо.

[РЕДАКТИРОВАТЬ] — Благодаря Gulzar я изменил свой код, приведенный выше, следующим образом, и теперь отображаются ошибки:

захожу на сайт myzika . ru
выдаёт такую ошибку

Ошибка сервера в приложении ‘/’.
Ошибка выполнения
Описание: На сервере возникла ошибка приложения. Текущая пользовательская настройка ошибок для этого приложения не позволяет удаленно просматривать сведения об ошибке данного приложения (из соображений безопасности). Однако, сведения можно просматривать в обозревателях, запущенных на локальном сервере.

Сведения: Для разрешения просмотра сведений данного сообщения об ошибке на локальном сервере создайте тег в файле конфигурации «web.

config», который находится в корневом каталоге текущего веб-приложения. В теге следует задать атрибут «mode» со значением «Off».

Примечания: Отображаемую в данный момент страницу ошибок можно заменить на пользовательскую страницу ошибок, изменив атрибут «defaultRedirect» тега конфигурации приложения таким образом, чтобы он содержал URL-адрес пользовательской страницы ошибок.

Подробное сообщение об ошибке 500, ASP + IIS 7.5

TLDR: сначала определите, где в конвейере вы получаете ошибку (прокрутите, ища скриншоты чего-то, что напоминает вашу ошибку), внесите изменения, чтобы получить что-то новое, повторите.

Сначала определите, какое сообщение об ошибке вы видите на самом деле.

Если вы видите файл, расположенный здесь …

% SystemDrive% \ Inetpub \ custerr \\ 500.htm

… который обычно выглядит так:

… тогда вы знаете, что видите текущую настроенную страницу ошибки в ** IIS **, и вам НЕ нужно изменять настройку ASPE customErrors, настройку сведений об ошибках asp или настройку браузера «show friendly http errors».

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

«Да, я вижу вышеописанную ошибку …»

В этом случае вы видите настройку < httpErrors > или в IIS Manager это страницы ошибок -> Изменить настройки функций. По умолчанию для этого используется errorMode = DetailLocalOnly на

уровне узла сервера (в отличие от уровня сайта), что означает, что, хотя вы увидите эту настроенную страницу ошибок, пока удаленно, вы сможете локально войти на сервер и увидеть полный ошибка, которая должна выглядеть примерно так:

У вас должно быть все, что вам нужно, чтобы исправить текущую ошибку.

«Но я не вижу подробных ошибок даже при просмотре на сервере»

Это оставляет пару возможностей.

  1. Браузер, который вы используете на сервере, настроен на использование прокси в настройках соединения, поэтому он не рассматривается как «локальный».
  2. Вы на самом деле не просматриваете сайт, который, как вы думаете, вы просматриваете — это обычно происходит, когда задействован балансировщик нагрузки. Выполните проверку ping, чтобы узнать, дает ли dns IP-адрес на сервере или где-то еще.
  3. Настройки httpErrors вашего сайта установлены только для «Custom». Измените его на «DetailLocalOnly». Однако, если у вас есть ошибка конфигурации, это может не сработать, поскольку httpErrors уровня сайта также является элементом конфигурации. В этом случае перейдите к # 4
  4. По умолчанию для httpErrors для всех сайтов установлено значение «Пользовательский». В этом случае вам нужно щелкнуть по узлу сервера верхнего уровня в диспетчере IIS (а не по определенному сайту) и изменить там настройки httpErrors на DetailsLocalOnly . Если это внутренний сервер и вы не беспокоитесь о разглашении конфиденциальной информации, вы также можете установить для него значение «Подробно», что позволит вам увидеть ошибку от клиентов, отличных от сервера.
  5. Вам не хватает модуля на сервере, такого как UrlRewrite (этот укус меня сильно кусает, и он часто выдает общее сообщение независимо от настроек httpErrors).

«Вход на сервер для меня не вариант»

Измените httpErrors вашего сайта на «Подробно», чтобы вы могли видеть его удаленно. Но если это не сработает, ваша ошибка уже может быть ошибкой конфигурации, см. № 3 непосредственно выше. Таким образом, вы можете застрять с № 4 или № 5, и вам понадобится кто-то из вашей команды сервера.

«Я не вижу страницу ошибки, описанную выше. Я вижу что-то другое»

… и вы ожидаете увидеть что-то подобное …

… тогда вам нужно изменить «Отправить ошибки в браузер» на true в IIS Manager, в разделе Сайт -> IIS -> ASP -> Свойства отладки.

или это…

… вам нужно отключить дружественные ошибки в вашем браузере или использовать веб-просмотр fiddler, чтобы посмотреть фактический ответ против того, что ваш браузер хочет показать вам.

Если вы видите это …

… тогда работают пользовательские ошибки, но у вас нет пользовательской страницы ошибок (конечно, в этот момент речь шла о .net, а не о классическом asp). Вам необходимо изменить тег customErrors в файле web.config на RemoteOnly для просмотра на сервере или Off для удаленного просмотра.

Если вы видите что-то в стиле вашего сайта, то, скорее всего, пользовательские ошибки включены или RemoteOnly и отображает пользовательскую страницу (например, Views-> Shared-> Error.cshtml в MVC). Тем не менее, маловероятно, но возможно, что кто-то изменил страницы в IIS для httpErrors, так что смотрите первый раздел об этом.

azure — Классический веб-сайт ASP в Azure «Страница не может быть отображена из-за внутренней ошибки сервера».

Мы перенесли приложение, написанное в классическом формате asp, на веб-сайты Azure (общие), и на некоторых страницах просто отображается ошибка «Страница не может быть отображена из-за внутренней ошибки сервера». без каких-либо подробностей. Эти страницы отлично работают под IIS 7 или с помощью IIS Express. Однако на сайте Azure их нет.

Как было предложено в некоторых других сообщениях, я настроил для веб-сайта в Azure следующее:

1) Ведение журнала веб-сервера — ВКЛ
2) Подробные сообщения об ошибках — ВКЛ
3) Web.config — выключить режим customErrors.

<customErrors mode="Off"/>
 <compilation debug="true" targetFramework="4.0">

Тем не менее, сообщения журнала не содержат более подробной информации о том, что не так, а просто содержат следующую информацию:

Подробная информация об ошибке:

Модуль IsapiModule
Уведомление ExecuteRequestHandler
Обработчик ASPClassic

Код ошибки 0x00000000

Приветствуется любая помощь по отладке классических проблем с asp-страницами на веб-сайтах Azure. Спасибо.

9

VVee 20 Мар 2013 в 22:43

6 ответов

Лучший ответ

  1. Проблема может быть связана с браузером: убедитесь, что в IE отключен параметр «показывать дружественные сообщения»

  2. Кроме того, на стороне сервера у вас должен быть какой-то параметр, позволяющий отправлять сообщения об ошибках клиенту (извините, у меня есть доступ только к IIS-версии этого параметра … не уверен, что в Azure):

0

G. Stoynev 21 Мар 2013 в 04:04

Я решил это, включив журнал приложений в разделе Ведение журнала => Журнал диагностики в конфигурации веб-приложения Azure.

Затем вы можете увидеть ошибку на панели «Журнал потока» и исправить ее.

В моем случае ошибка, когда следующие две строки в web.config:

<add name="ExtensionlessUrlHandler-Integrated-4.0" 
 path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" 
 preCondition="integratedMode,runtimeVersionv4.0"/>
<remove name="ExtensionlessUrlHandler-Integrated-4.0"/>

Я удалил их, и это снова сработало.

0

Murmel 31 Окт 2017 в 12:59

Чтобы подробные сообщения об ошибках отправлялись в браузер, вам необходимо включить атрибут scriptErrorSentToBrowser, как показано ниже.

  <system.webServer>
       <asp scriptErrorSentToBrowser="true" />
  </system.webServer>

Само собой разумеется, что это может быть потенциальной угрозой безопасности, поэтому не следует оставлять ее включенной!

1

David Lindon 10 Июн 2019 в 12:38

Если вы пытаетесь настроить свой сайт, где у вас нет доступа к IIS, например веб-приложение Azure, вы можете настроить параметры классического ASP в файле Web.Config.

Под

<system.webServer>

Вы можете разместить

<asp>

Элемент, который настраивает различные параметры работы Classic.

Свойство, влияющее на мой сайт, было

**appAllowDebugging="true"**

Хотя это свойство прекрасно и удобно, когда вы разрабатываете с помощью Visual Studio и у вас установлен отладчик Just-In-Time, оно нарушает обработку ошибок для Classic Asp.

Кстати, мне потребовалась целая вечность, чтобы понять, что я изменил.

1

LarryBud 17 Фев 2018 в 04:26

Одна (странная) вещь, которая сработала для меня:

Попробуйте использовать FTP на своем веб-сайте Azure и переименуйте свой web.config во что-нибудь совершенно другое.

Я переименовал свое в web.config2 — сообщение об ошибке Azure "The page cannot be displayed because an internal server error has occurred." исчезло, и мое приложение ASP.Net снова ожило.

Оттуда я воссоздал web.config с нуля, скопировав его фрагменты из моей исходной версии, по частям (чтобы увидеть, что было причиной проблемы).

Да, я знаю … это глупое предложение, но Azure не давала мне никаких намеков на то, что было причиной ошибки, даже при включенном ведении журнала, и это спасло мне рассудок !!

7

Mike Gledhill 21 Май 2014 в 12:38

Спасибо Г. Стойневу! Это сработало после добавления пользовательской страницы ошибки asp! Я использовал код из следующей ссылки для создания настраиваемой asp-страницы ошибок

http://support.microsoft. com / kb / 224070

Также помогла следующая ссылка http://www.tacticaltechnique.com/web-development/classic-asp-getlasterror-in-iis7/

Теперь раздел system.webServer в моем веб- .config выглядит следующим образом:

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true"/>
    <httpErrors> 
     <remove statusCode="500" subStatusCode="100" />
     <error statusCode="500" subStatusCode="100" prefixLanguageFilePath="" path="/errors.asp" responseMode="ExecuteURL" /> 
   </httpErrors> 
  </system.webServer>

12

VVee 21 Мар 2013 в 21:23

Настройка вывода сообщений об ошибках с помощью ‹customErrors›

Читайте также

Уровни вывода сообщений ядра

Уровни вывода сообщений ядра Главное отличие между функциями printk() и printf() — это возможность в первой указывать уровень вывода сообщений ядра (loglevel). Ядро использует уровень вывода сообщений для принятия решения о том, выводить сообщение на консоль или нет. Ядро выводит на

Отправка сообщений об ошибках

Отправка сообщений об ошибках Если вы обнаружили ошибку, то наилучшим решением будет исправить ее, сгенерировать соответствующую заплату, оттестировать и отправить, как это будет рассказано в следующих разделах. Конечно, можно и просто сообщить об ошибке, чтобы

Глава 6 Программирование с помощью стандартных функций ввода-вывода

Глава 6 Программирование с помощью стандартных функций ввода-вывода До сих пор мы использовали существующие инструменты, чтобы разрабатывать новые, но сейчас уже достигнут разумный предел в создании новых средств с помощью shell, sed и awk. В этой главе нам предстоит написать

Тонкая настройка с помощью системного реестра

Тонкая настройка с помощью системного реестра Рассмотрим примеры настройки Internet Explorer с помощью реестра.Изменение заголовка Internet ExplorerОткройте Редактор реестра (для этого нужно в меню Пуск выбрать пункт Выполнить и в появившемся окне ввести команду regedit), перейдите в

7.2.1 Типы сообщений об ошибках

7.2.1 Типы сообщений об ошибках На рис. 7.3 показаны обобщенные сообщения, формируемые маршрутизатором и хостом назначения для отчета о возникшей проблеме. В таблице 7.1 перечислены формальные имена сообщений об ошибках ICMP. Рис. 7.3. Типы сообщений об ошибках ICMPТаблица 7.1

В.З. Стандартные функции вывода сообщений об ошибках

В.З. Стандартные функции вывода сообщений об ошибках Мы определили свой набор функций, используемых во всех программах книги для обработки ситуаций с возникновением ошибок. Причина, по которой мы создаем эти функции, заключается в том, что теперь мы можем писать команды в

1.1.8. Обработка сообщений с помощью VCL

1.1.8. Обработка сообщений с помощью VCL При использовании VCL в простых случаях самостоятельно работать с оконными сообщениями нет нужды, поскольку практически все можно сделать с помощью свойств, методов и событий компонентов. Тем не менее, некоторые сообщения приходится

Получение и пересылка сообщений. Создание ответных сообщений

Получение и пересылка сообщений. Создание ответных сообщений Чтобы получить новую почту, выполните команду главного меню Сервис ? Отправить/Получить ? Доставить почту либо нажмите клавишу F9. Все полученные почтовые сообщения будут помещены в папку Входящие и помечены

Настройка параметров сериализации с помощью ISerializable

Настройка параметров сериализации с помощью ISerializable Объекты, обозначаемые атрибутом [Serializable], имеют возможность реализовать интерфейс ISerializable. В этом случае вы можете «участвовать» в процессе сериализации, выполняя любое предварительное или последующее форматирование

Настройка Web-приложения ASP.NET с помощью Web.config

Настройка Web-приложения ASP.NET с помощью Web.config При изучении компоновочных блоков .NET мы с вами выяснили, что приложения клиента могут использовать XML-файл конфигурации, содержащий инструкции CLR о том, как обрабатывать связанные запросы, где искать необходимые компоновочные

8.3.1. Настройка с помощью Network Manager

8.3.1. Настройка с помощью Network Manager Для настройки соединения с использованием Network Manager выберите команду меню Система | Параметры | Сетевые соединения, перейдите на вкладку DSL и нажмите кнопку Добавить. В открывшемся окне (рис. 8.2) введите имя пользователя и его пароль. Если у

8.3.2. Настройка с помощью конфигуратора pppoeconf

8.3.2. Настройка с помощью конфигуратора pppoeconf Чуть ранее я упомянул, что для настройки DSL-соединения применяется также конфигуратор pppoeconf. Этот конфигуратор работает в терминале, что позволяет использовать его, даже если графический интерфейс недоступен (или отключен,

8.4.2. Подавление вывода сообщений об ошибках

8.4.2. Подавление вывода сообщений об ошибках Допустим, вы хотите найти запись пользователя louise в системном файле паролей:$ grep louise /etc/passwdlouise:lxAL6GW9G.ZyY:501:501:Accounts Sect1С:/home/accts/louise:/bin/shHe исключена возможность, что вы забудете, как называется этот файл. В таком случае воспользуйтесь

Как выключить customerrors в файле config сервера


customerrors в файле config сервера что это

На чтение 2 мин. Просмотров 17 Опубликовано

Я получаю следующую ошибку при попытке подключиться к своему серверному приложению с использованием удаленного взаимодействия:

При подключении к удаленному серверу возникла проблема:
Сервер обнаружил внутреннюю ошибку. Для получения дополнительной информации отключите customErrors в файле .config сервера.

Это код моего серверного приложения:

Кажется, он работает с первого раза, но если серверное приложение не перезапускается, возникает ошибка.

Я думаю, что-то не очищается должным образом, но я не уверен, что, поскольку customError все еще включен.

1110 Любые идеи, с которых я начинаю. Благодаря.

[РЕДАКТИРОВАТЬ] – Благодаря Гульзару я изменил свой код выше для следующего, и теперь отображаются ошибки:

Я получаю следующую ошибку при попытке подключиться к своему серверному приложению с использованием удаленного взаимодействия:

Возможно, возникла проблема при подключении к удаленному серверу:
Сервер обнаружил внутреннюю ошибку. Для получения дополнительной информации отключите customErrors в файле .config сервера.

Это код моего серверного приложения:

Кажется, это работает с первого раза, но если приложение сервера не будет перезапущено, возникает ошибка.

Я предполагаю, что что-то не очищается должным образом, но я не уверен, что так как customError все еще включен.

Любые идеи, с которых я начинаю. Спасибо.

[РЕДАКТИРОВАТЬ] – Благодаря Gulzar я изменил свой код, приведенный выше, следующим образом, и теперь отображаются ошибки:

захожу на сайт myzika . ru
выдаёт такую ошибку

Ошибка сервера в приложении ‘/’.
Ошибка выполнения
Описание: На сервере возникла ошибка приложения. Текущая пользовательская настройка ошибок для этого приложения не позволяет удаленно просматривать сведения об ошибке данного приложения (из соображений безопасности). Однако, сведения можно просматривать в обозревателях, запущенных на локальном сервере.

Сведения: Для разрешения просмотра сведений данного сообщения об ошибке на локальном сервере создайте тег в файле конфигурации “web.config”, который находится в корневом каталоге текущего веб-приложения. В теге следует задать атрибут “mode” со значением “Off”.

Примечания: Отображаемую в данный момент страницу ошибок можно заменить на пользовательскую страницу ошибок, изменив атрибут “defaultRedirect” тега конфигурации приложения таким образом, чтобы он содержал URL-адрес пользовательской страницы ошибок.

CustomErrors mode = «Off»

В интересах добавления большего количества ситуаций к этому вопросу (потому что это то, куда я смотрел, потому что у меня была точно такая же проблема), вот мой ответ:

В моем случае я вырезал / вставил текст из общей ошибки, говоря, в действительности, если вы хотите увидеть, что не так, поставьте

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

Так что это должно было исправить это, но, конечно, нет! Моя проблема заключалась в том, что был узел <system.web> на несколько строк выше (перед узлом компиляции и аутентификации) и закрывающий тег </system.web> на несколько строк ниже. Как только я исправил это, хорошо, проблема решена. Что я должен был сделать, это скопировать / вставить только эту строку:

<customErrors mode="Off"/>

Это из летописи «Глупых вещей, которые я продолжаю делать снова и снова», в главе, озаглавленной «Скопируйте и вставьте свой путь к разрушению».

Сеть.config не показывает ошибок удаленно даже с customErrors= » Off » (на ubuntu / mono)

Вот моя паутина.конфигурационный файл:

<?xml version="1.0"?> <configuration> <system.web> <customErrors mode="Off" /> <compilation debug="true" strict="false" explicit="true /> <pages> <namespaces> <clear /> <add namespace="System" /> <add namespace="System.Collections" /> <add namespace="System.Collections.Generic" /> <add namespace="System.Collections.Specialized" /> <add namespace="System.Configuration" /> <add namespace="System.Text" /> <add namespace="System.Text.RegularExpressions" /> <add namespace="System.Web" /> <add namespace="System.Web.Caching" /> <add namespace="System.Web.SessionState" /> <add namespace="System.Web.Security" /> <add namespace="System.Web.Profile" /> <add namespace="System.Web.UI" /> <add namespace="System.Web.UI.WebControls" /> <add namespace="System.Web.UI.WebControls.WebParts" /> <add namespace="System.Web.UI.HtmlControls" /> </namespaces> <controls> <add src ="~/controls/maleBed.ascx" tagPrefix ="mycontrol" tagName ="male"/> <add src ="~/controls/femaleBed.ascx" tagPrefix ="mycontrol" tagName ="female"/> </controls> </pages> </system.web> </configuration> 

Даже с режимом customErrors, установленным в Off (и его определенно заглавная «O»), он все еще показывает мне страницу ошибок по умолчанию, говоря мне установить это свойство, прежде чем я смогу увидеть эту фактическую ошибку удаленно.

У меня нет машины.конфигурационный файл, и я также установил этот customErrors mode= » Off » в Интернете.Отлаживать.конфиг и паутина.Выпускать.конфиг.

Есть идеи у кого-нибудь?

Большое вам спасибо.

Редактировать-что его показ:

Server Error in '/' Application 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> 

Зачем устанавливать customErrors в интернете.конфиг не работает в этом случае?

в моем ASP.NET 3.5 веб-сайт, который публикуется в общем хостинг-провайдере, я настроил свой веб-сайт.файл конфигурации выглядит так:

 <customErrors mode="On" defaultRedirect="GenericErrorPage.htm"> <error statusCode="403" redirect="AccessDenied.htm"/> <error statusCode="404" redirect="FileNotFound.htm"/> </customErrors> 

Если страницы запроса пользователя, которые не существуют ( например, «www.example.com/NotExistPage.aspx»), пользователь будет перенаправлен на FileNotFound.htm страница, как мы ожидаем .

но если пользователь запрашивает какой-то адрес, например : «www.example.com/NotExistDirectory-без .расширение aspx, пользователь столкнется со страницей ошибок IIS 7.5 :

ошибка HTTP 404.0 — не найден ресурс, который вы ищете, был удалили, изменили его название или временно недоступен.

информация об ошибке Detialed:

Module IIS Web Core Notification MapRequestHandler Handler StaticFile Error Code 0x80070002 Requested URL http://www.example.com:80/NotExistDirectory Physical Path D:Websitesexampleexample.comwwwrootNotExistDirectory Logon Method Anonymous Logon User Anonymous 

это желтая страница, которая не является удобной для пользователя, и мы не ожидали .

мне интересно, что настройка customeError в webconfig не поддерживает этот тип адреса или нет ? Как я могу запретить пользователям видеть эту желтую страницу .

Edit: Благодаря ответу Дэвида, но я нашел настоящую причину и правильное решение. Пожалуйста, см. Мой ответ.

Сеть.config не показывает ошибки удаленно даже с customErrors= » Off » (на ubuntu / mono)

вот моя паутина.конфигурационный файл:

<?xml version="1.0"?> <configuration> <system.web> <customErrors mode="Off" /> <compilation debug="true" strict="false" explicit="true /> <pages> <namespaces> <clear /> <add namespace="System" /> <add namespace="System.Collections" /> <add namespace="System.Collections.Generic" /> <add namespace="System.Collections.Specialized" /> <add namespace="System.Configuration" /> <add namespace="System.Text" /> <add namespace="System.Text.RegularExpressions" /> <add namespace="System.Web" /> <add namespace="System.Web.Caching" /> <add namespace="System.Web.SessionState" /> <add namespace="System.Web.Security" /> <add namespace="System.Web.Profile" /> <add namespace="System.Web.UI" /> <add namespace="System.Web.UI.WebControls" /> <add namespace="System.Web.UI.WebControls.WebParts" /> <add namespace="System.Web.UI.HtmlControls" /> </namespaces> <controls> <add src ="~/controls/maleBed.ascx" tagPrefix ="mycontrol" tagName ="male"/> <add src ="~/controls/femaleBed.ascx" tagPrefix ="mycontrol" tagName ="female"/> </controls> </pages> </system.web> </configuration> 

даже с режимом customErrors, установленным в Off (и его определенно заглавная «O»), он все еще показывает мне страницу ошибок по умолчанию, сообщая мне установить это свойство, прежде чем я смогу увидеть эту фактическую ошибку удаленно.

у меня нет машины.файл конфигурации, и я также установил этот режим customErrors= » Off » в Интернете.Отлаживать.config и Web.Освобождать.конфиг.

есть идеи кто-нибудь?

спасибо много.

Edit-что его показывает:

Server Error in '/' Application 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

Я пытаюсь исправить. Я загрузил мою папку проекта в веб-хостинг. Мой проект запускается локально, но показывает ошибку времени выполнения в файле we.config. Я не знаю, как исправить эту ошибку. Я добавил строку в system.web еще есть проблема. Я удалил страницу default.aspx now.IS, эта проблема связана с отсутствием страницы по умолчанию.

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

 <?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-multi_hrms-20150331014837;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-multi_hrms-20150331014837.mdf" />
</connectionStrings>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
<pages>
<namespaces>
<add namespace="System.Web.Optimization" />
</namespaces>
<controls>
<add assembly="Microsoft.AspNet.Web.Optimization.WebForms" namespace="Microsoft.AspNet.Web.Optimization.WebForms" tagPrefix="webopt" />
</controls>
</pages>
<authentication mode="None">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<profile defaultProvider="DefaultProfileProvider">
<providers>
<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</profile>
<membership defaultProvider="DefaultMembershipProvider">
<providers>
<add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
</providers>
</membership>
<roleManager defaultProvider="DefaultRoleProvider">
<providers>
<add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
</providers>
</roleManager>
<sessionState mode="InProc" customProvider="DefaultSessionProvider">
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
</system.web>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
</entityFramework>
</configuration>
Веб-конфигурация

— Asp.net — ошибка при попытке доступа к рабочей веб-странице

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
.

asp.net — Web.config не показывает ошибки удаленно, даже если customErrors = «Off» (в ubuntu / mono)

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
.

Режим CustomError в файле web.config

Создайте тег в файл конфигурации «web.config», расположенный в корневом каталоге текущее веб-приложение. Этот тег должен иметь свой Атрибут «mode» установлен на «Off».

  
  
 
 
 
  
  

Если для параметра customErrors установлено значение On или RemoteOnly, вам необходимо укажите атрибут defaultRedirect. Этот атрибут содержит страницу ошибки на которую будет перенаправлен пользователь. Дополнительно вы можете принять настраиваемую ошибку обработка следующего шага путем связывания определенных ошибок с конкретной ошибкой страниц. Раздел customErrors может содержать элементы ошибок, которые связывают конкретные ошибки со страницами ошибок.Следующий пример кода иллюстрирует это концепция.

error statusCode = «403» redirect = «Contents / CommonPage.aspx» />

.

Как настроить файл web.config для отображения полного сообщения об ошибке (.net core 2.1)

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Customerrors в файле config сервера как выключить

I getting the following error when I try to connect to my server app using remoting:

A problem seems to have occured whilst connecting to the remote server:
Server encountered an internal error. For more information, turn off customErrors in the server’s .config file.

This is the code on my server app:

It seems to work the first time, but unless the server app is restarted the error occurs.

I would guess something isn’t being cleaned up properly but I’m not sure what as the customError is still on.

Any ideas where I start. Thanks.

[EDIT] — Thanks to Gulzar, I modified my code above to the following and now the errors are shown:

Создан 16 окт. 08 2008-10-16 16:11:54 HAdes

30 HAdes [2008-10-16 19:11:00]

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

Проблема, похоже, произошла при подключении к удаленному серверу:
Сервер обнаружил внутреннюю ошибку. Для получения дополнительной информации отключите customErrors в файле .config сервера.

Это код моего приложения для сервера:

Кажется, что он работает в первый раз, но если серверное приложение не перезапущено, возникает ошибка.

Я бы предположил, что что-то не очищается должным образом, но я не уверен, что, поскольку customError все еще включен.

Любые идеи, с которых я начинаю. Спасибо.

[EDIT] — Благодаря Gulzar, я изменил свой код выше на следующий, и теперь отображаются ошибки:

Этот раздел относится к технологии прежних версий, которая сохраняется для обеспечения обратной совместимости с существующими приложениями и не рекомендуется для разработки новых приложений. Сейчас распределенные приложения следует создавать с помощью Windows Communication Foundation (WCF).

Указывает, возвращают ли каналы сервера в этом домене приложения локальным или удаленным вызывающим объектам фильтрованные или полные сведения об исключениях. Этот элемент может встречаться в файле конфигурации приложения или в файле конфигурации компьютера. Этот элемент поддерживается в платформе .NET Framework версии 1.1 или более поздней версии в операционной системе Microsoft Windows 98 или более поздней версии.

В следующих разделах описываются атрибуты, дочерние и родительские элементы.

Атрибуты

mode

Указывает, возвращают ли каналы сервера в этом домене приложения локальным или удаленным вызывающим объектам фильтрованные или полные сведения об исключениях. Значение по умолчанию — RemoteOnly, которое возвращает полные сведения об исключении (включая трассировку стека) только вызывающим объектам, расположенным на том же компьютере, что и сервер.

Дочерние элементы
Родительские элементы
Атрибут Описание

configuration

Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями платформы .NET Framework.

system.runtime.remoting

Содержит сведения об удаленных объектах и каналах.

Полные сведения об исключении включают точное исключение сервера и трассировку стека сервера. Фильтрованные сведения включают стандартное исключение удаленного доступа, но не трассировку стека сервера.

В приведенной ниже таблице приведены три значения свойства канала сервера, которые указывают, какие вызывающие объекты получают сведения об исключении и сведения какого типа они получают.

Элемент Описание

Off

Все вызывающие объекты получают полные сведения об исключении.

On

Все вызывающие объекты получают фильтрованные сведения об исключении.

RemoteOnly

Локальные вызывающие объекты получают полные сведения об исключении. Удаленные вызывающие объекты получают фильтрованные сведения об исключении.

Приведенный ниже файл конфигурации содержит предназначенные для системы удаленного взаимодействия .NET Framework указания зарегистрировать канал сервера от имени домена клиентского приложения, чтобы клиентский домен мог передавать делегат для использования в качестве обратного вызова. Задание значения приводит к тому, что сервер получает полные сведения об исключении, включая трассировку стека, если во время обратного вызова на клиенте возникает исключение.

Значение Описание

asp.net — Ошибка: подробности ошибки приложения от просматриваемого удаленно

У меня есть 2 входа страниц: Login.aspx-для входа в систему клиента и xlogin.aspx для администратора входа в систему я только что загрузил свой проект на сервер и все страницы приложения прекрасно работает, но когда я войти админа xlogin.aspx я пересылаются на страница admin.aspx — но я получаю эту ошибку:

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

<?xml version=1.0?>

<configuration>
  <connectionStrings>
    <clear/>
    <add name=PROJEntities connectionString=metadata=res://*/PROJModel.csdl|res://*/PROJModel.ssdl|res://*/PROJModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=000.000.0.00;Initial Catalog=DBNAME;User ID=MYUSERNAME;Password=MYPASS;MultipleActiveResultSets=True&quot; providerName=System.Data.EntityClient/>
  </connectionStrings>

  <system.web>
    <compilation debug=true targetFramework=4.0 />

    <authentication mode=Forms>
        <forms loginUrl=~/Login.aspx timeout=720 slidingExpiration=true defaultUrl=~/Gateway.ashx/>
    </authentication>

    <customErrors mode=Off/>
    <pages enableEventValidation=false viewStateEncryptionMode=Never></pages>
  </system.web>

  <system.webServer>
     <modules runAllManagedModulesForAllRequests=true/>
  </system.webServer>

  <system.web.extensions>
    <scripting>
      <webServices>
        <jsonSerialization>
          <converters>
            <add type=PROJ.Presentation.Common.DateTimeConverter name=DateTimeJavaScriptConverter/>
          </converters>
        </jsonSerialization>
      </webServices>
    </scripting>
  </system.web.extensions>
</configuration>

Как отключить пользовательский режим ошибок в Web.Config ASP.Net

В этой статье я объясню, как отключить пользовательский режим ошибок в файле Web.Config в ASP.Net.
Параметр customError в файле Web.Config приложения ASP.Net, как он работает, каково его использование и каковы различные режимы параметра customError в файле Web.Config приложения ASP.Net.
Параметр customError в файле Web.Файл конфигурации имеет три режима Off, On и RemoteOnly.

Как отключить пользовательский режим ошибок в Web.Config ASP.Net

Параметр customError является функцией безопасности в ASP.Net и предназначен для защиты веб-сайтов от хакеров, скрывая от них фактические сведения об ошибках.

Каждый раз, когда на веб-сайте возникает ошибка, вместо отображения фактических сведений об ошибке ASP.Net показывает конечному пользователю следующую страницу.

Разработчики могут легко включить или отключить эту функцию, добавив параметр customError , задав раздел system.web файла Web.Config и установив соответствующий режим.

Параметр customError имеет три режима.

На (по умолчанию) — даже параметр customError отсутствует в файле Web.Config, режим по умолчанию —
На и фактические сведения об ошибке всегда будут скрыты i.е. он не будет отображаться при доступе к веб-сайту на сервере или любой клиентской машине.

RemoteOnly (рекомендуется) — этот параметр скроет сведения об ошибке от конечных пользователей, то есть при доступе с клиентских компьютеров, но когда веб-сайт доступен на сервере, на котором он размещен, будут отображаться фактические сведения об ошибке.

Выкл. — этот параметр отключит функцию, и всем будет показана полная информация об ошибке. Обычно отключение этого параметра Выкл. не рекомендуется.

Включение / отключение настраиваемой ошибки путем редактирования Web.Config с помощью PowerShell

Чтобы выявить реальные ошибки в SharePoint, мы использовали отключение настраиваемой страницы ошибок, редактируя файл web.config, расположенный в корне виртуального каталога SharePoint.

  • Откройте web.config в Блокноте.
  • Найдите «CallStack», измените его с «false» на «true»
  • Найдите «CustomErrors mode», измените его значение с «On» на «Off»
  • Сохранить и закрыть.

Предупреждение: файл Web.config очень чувствителен! даже небольшая опечатка может привести к сбою вашего сайта SharePoint !!

Типичная «Неизвестная ошибка» SharePoint 2007

и SharePoint 2010 «Произошла непредвиденная ошибка»


Хорошо, не стоит ли вносить эти изменения с помощью сценариев PowerShell? Конечно, вот сценарий PowerShell для включения или отключения настраиваемой страницы ошибок SharePoint и выявления фактической ошибки путем редактирования файла Web.Config:
 Надстройка PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

Функция ConfigureCustomError ()
{
  Param ([Parameter (Mandatory = $ true)] [string] $ WebAppURL, [parameter (Mandatory = $ true)] $ Option)

 # Получить веб-приложение
 $ WebApp = Get-SPWebApplication $ WebAppURL
 # Получить зону веб-приложений
 $ Zone = $ WebApp.AlternateUrls [0] .UrlZone
 # Получить настройки IIS для зоны
 $ IISSettings = $ WebApp.IISSettings [$ зона]
 # Получить путь из настроек
 $ WebConfigPath = $ IISSettings.Path.ToString () + «\ web.config»

 # Резервное копирование в Интернете.файл конфигурации
 $ now = [datetime] :: now.ToString ('дд-ММ-гггг чч-мм-сс')
 $ BackupFile = $ IISSettings.Path.ToString () + "\ web.config. $ Сейчас"
 copy-item $ WebConfigPath -destination $ BackupFile

 # Получить файл Web.config
 $ XMLDoc = новый объект System.Xml.XmlDocument
 $ XMLDoc.Load ($ WebConfigPath)
  переключатель (опция $)
  {
  "ВЫКЛЮЧЕННЫЙ" {
    #Apply Change
    $ XMLDoc.get_DocumentElement (). "Sharepoint" .safemode.callstack = "True"
    $ XMLDoc.get_DocumentElement (). "System.web" .customErrors.mode = "Выкл."
    Write-Host «Пользовательский режим ошибок отключен, теперь вы можете получить фактические ошибки!»
    }
  "НА" {
    $ XMLDoc.get_DocumentElement (). "sharepoint" .safemode.callstack = "Ложь"
    $ XMLDoc.get_DocumentElement (). "System.web" .customErrors.mode = "ВКЛ"
    Write-Host «Включен настраиваемый режим ошибок, SharePoint отображает настраиваемую страницу ошибок по умолчанию!»
    }
  }
 $ XMLDoc.Save ($ WebConfigPath)
 }

# Вызов функции для отключения пользовательских ошибок
ConfigureCustomError "http://sharepoint.crescent.com" "ВЫКЛ"
 

Похожие сообщения

Как изменить страницу ошибок по умолчанию в веб-конфигурации?

Шаги для Custom Error Страница

Установите настройки в Web . Конфиг файл приложения. Передайте атрибуты defaultRedirect и mode в . Если вы хотите, чтобы установил , ваше исключение уровня приложения должно перенаправить на страницу пользовательской ошибки , вы можете сделать это, перейдя в global.

Нажмите, чтобы увидеть полный ответ


Имея это в виду, как мне удалить пользовательские ошибки в веб-конфигурации?

Чтобы отключить пользовательские ошибки, выполните следующие действия:

  1. Создайте резервную копию Интернета.
  2. Откройте Интернет.
  3. В сети.
  4. Отключите режим customErrors следующим образом:
  5. Сохранить в Интернете.
  6. При выполнении проблемного запроса ASP.NET теперь возвращает подробное сообщение об ошибке, в котором описывается конкретный характер проблемы.
  7. Повторно включить .

Кроме того, как включить настраиваемые ошибки в веб-конфигурации MVC? Заходим в файл Web.config

  1. Есть два Web. config в ASP.NET MVC Project.
  2. Перейти в Интернет. config в корневом каталоге.
  3. Перейти в корневой каталог, Интернет. config, затем System. Интернет и щелкните CustomError. Установите его на Вкл. Добавьте эту строку.

Итак, что такое режим customErrors в веб-конфигурации?

позволяет разработчикам настраивать страницы ошибок html. для отображения вместо трассировки стека ошибок. < customErrors mode = «RemoteOnly» defaultRedirect = «GenericErrorPage.htm «>

Как настроить пользовательскую страницу ошибки 404 в Microsoft IIS?

Перейдите на панель «Подключения» и щелкните значок «плюс» (+) рядом с именем вашего сервера , чтобы развернуть его. Затем разверните «Сайты». Затем перейдите на сайт или в приложение, для которого нужно настроить страницу ошибок . Шаг 3: Откройте страницы ошибок . Дважды щелкните значок « Страницы ошибок », расположенный на главной панели, нажмите «Изменить».”

iis — Как настроить файл Web.Config, чтобы разрешить настраиваемую обработку 404 при одновременном отображении сведений об ошибке 500 на странице?

Я обнаружил много сложных обходных путей для классического ASP в IIS 7.5 для работы с типом пользовательской обработки ошибок IIS 6 для определенного кода ошибки, обычно 404. Я надеюсь, что это поможет людям, которые наткнулись на него.

Я использую IIS 7.5 R2, но думаю, что это применимо к IIS 7 в целом.

Если ваш web.В файле конфигурации есть это:

  
  

… внутри диспетчера IIS вы, вероятно, выбрали Edit Features в разделе Error Pages, чтобы изменить функции на панели Edit Error Pages Settings. Если вы измените это значение на Custom Error Pages (customErrors mode = «On»), вы будете вынуждены настроить обработку каждого номера ошибки. Так что не делай этого.

Все, что вам нужно сделать, это щелкнуть ПРАВОЙ кнопкой мыши по номеру ошибки, которую вы хотите обработать, и выбрать «Редактировать».Там вы можете указать на настраиваемую страницу ошибки, которую вы создаете или перенаправить на URL-адрес. Вместо того, чтобы создавать настраиваемую страницу ошибок, которую вы должны не забывать обновлять при изменении дизайна вашего сайта или меню, я всегда предлагаю перенаправить на домашнюю страницу и добавить что-нибудь в строку запроса, например? Syserror, которую вы затем можете обработать с домашней страницы. Моя методика состоит в том, чтобы проверить это в сценарии домашней страницы и отобразить дружественное сообщение, сообщающее им, что их страница не найдена и они были перенаправлены на домашнюю страницу.

Ваш файл web.config будет выглядеть примерно так:

  



  

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

Только мои 2 цента, надеюсь, это поможет, и, пожалуйста, дайте мне знать, если вы считаете, что я ошибаюсь в чем-то здесь.

Сетевая безопасность: исправление пользовательских ошибок | Пуна Мумбаи Хайдарабад Дели Бангалор Индия

Чтобы Apache не отображал эту информацию миру, нам необходимо внести некоторые изменения в основной файл конфигурации Apache.

ServerSignature Off
ServerTokens Prod

IIS
Страницы ошибок веб-сайта часто настраиваются так, чтобы отображать подробную информацию об ошибках для целей устранения неполадок.Однако, чтобы предотвратить просмотр конфиденциальной информации неавторизованными пользователями, вы должны убедиться, что подробные страницы ошибок не будут видны удаленным пользователям.

Чтобы предотвратить перехват страниц с ошибками IIS7, установите existingResponse = «PassThrough» в разделе httpErrors в файле web.config. Например:




Установка пользовательского режима ошибок для ошибок: DetailLocalOnly или Пользовательский

  1. Щелкните Пуск, щелкните Панель управления, а затем щелкните Администрирование.
  2. Щелкните правой кнопкой мыши Диспетчер информационных служб Интернета (IIS) и выберите Запуск от имени администратора.
  3. На панели «Подключения» слева разверните компьютер, затем разверните папку «Сайты».
  4. Выберите веб-сайт или приложение, которое вы хотите настроить.
  5. В представлении функций выберите Страницы ошибок. На панели «Действия» выберите «Открыть компонент».
  6. На панели «Действия» выберите «Изменить параметры функции».
  7. В диалоговом окне «Изменить параметры страниц ошибок» в разделе «Ответы на ошибки» выберите «Пользовательские страницы ошибок» или «Подробные ошибки» для локальных запросов и пользовательские страницы ошибок для удаленных запросов.
  8. Нажмите OK, чтобы закрыть диалоговое окно «Редактировать настройки страниц ошибок».

Чтобы предотвратить утечку информации с помощью настраиваемых страниц ошибок, внесите следующие изменения в файл web.config из ответов HTTP.








Tomcat

Используя конфигурацию, в которой веб-приложение развертывается в контексте Tomcat ROOT, и предполагая, что у вас уже разработаны настраиваемые страницы ошибок 500 и 404, вы должны добавить следующее в конфигурацию web.xml ваших ROOT веб-приложений, которая обычно находится в $ CATALINA_HOME / webapps / ROOT /:


500
/ ошибки / 500.HTML


404
/errors/404.html

Где я могу поместить httpErrors в веб-конфигурацию?

Конфигурация . Вы можете настроить элемент < httpErrors > на уровне сервера в ApplicationHost. config и на уровне сайта и приложения в соответствующем Web . config файл.

Щелкните, чтобы увидеть полный ответ.

В связи с этим, как мне настроить пользовательскую страницу ошибки 404 в Microsoft IIS?

Перейдите на панель «Подключения» и щелкните значок «плюс» (+) рядом с именем сервера , чтобы развернуть его.Затем разверните «Сайты». Затем перейдите на сайт или в приложение, для которого нужно настроить страницу ошибок . Шаг 3. Откройте страницы ошибок . Дважды щелкните значок « Error Pages », расположенный на главной панели; нажмите «Изменить».

Дополнительно, как мне настроить режим customErrors? Создайте тег < customErrors > в файле конфигурации «web. Config», расположенном в корневом каталоге текущего веб-приложения. Этот тег < customErrors > должен затем иметь свой атрибут mode , установленный для как «Off».Когда customErrors — это , установите на On или RemoteOnly, вам необходимо указать атрибут defaultRedirect.

Впоследствии возникает вопрос, как отключить пользовательские ошибки в веб-конфигурации?

Чтобы отключить пользовательские ошибки, выполните следующие действия:

  1. Создайте резервную копию Интернета.
  2. Откройте Интернет.
  3. В сети.
  4. Отключите режим customErrors следующим образом:
  5. Сохранить в Интернете.
  6. При запуске проблемного запроса ASP.NET теперь возвращает подробное сообщение об ошибке, в котором описывается конкретный характер проблемы.
  7. Повторно включить .

Какой атрибут пользовательских ошибок используется для установки URL-адреса страницы ошибки? Конфигурация

имеет два атрибута , которые влияют на отображение страницы ошибки : defaultRedirect и mode. Атрибут defaultRedirect является необязательным. Если предоставлен, он указывает URL пользовательской страницы ошибок и указывает, что пользовательская страница ошибок должна отображаться вместо Runtime Error YSOD.

Установка пользовательской ошибки с использованием файла web.config в Asp.Net

Ошибки могут очень раздражать, а иногда и вводить в заблуждение пользователей при просмотре веб-приложения. Эти нежелательные, а иногда и необработанные ошибки могут нанести серьезный ущерб репутации веб-сайта и его бизнесу. Ошибки могут быть чем угодно, например, «Файл не найден» или ошибкой, возникшей при выполнении кода на стороне сервера.

Независимо от какой-либо действительной или недействительной причины необработанная ошибка, такая как страница не найдена, иногда может очень сбить с толку пользователей, которые могут подумать, что страница или страницы на самом деле никогда не существовали, что также может увеличить показатель отказов вашего веб-сайта.Показатель отказов — это термин SEO, используемый для анализа того, как быстро пользователь покинул страницу после посещения страницы. Вы можете прочитать больше об этом здесь.

Хорошо написанный код на стороне сервера с использованием Asp.Net должен иметь процедуры обработки ошибок с использованием блоков try, catch и finally. Эти блоки гарантируют, что ошибки обрабатываются и не выходят из-под контроля, раскрывая структуры и шаблоны кодов. Поскольку ошибки неизбежны и иногда могут возникать в результате действий, совершенных пользователем непреднамеренно или иным образом, всегда рекомендуется эффективно обрабатывать ошибки.

Эти ошибки уровня приложения могут быть эффективно обработаны путем настройки файла web.config с использованием его родительского элемента customErrors и его дочерних элементов ошибок. XML-файл с именем web.config создается автоматически после того, как вы решите создать новый веб-сайт с помощью Asp.Net.

Типичный элемент customErrors с дочерними элементами внутри файла web.config выглядит так.

& ltcustomErrors mode = "RemoteOnly" defaultRedirect = "GenericErrorPage.htm ">
    & lterror statusCode = "403" redirect = "NoAccess.htm" />
    & lterror statusCode = "404" redirect = "FileNotFound.htm" />
& lt / customErrors> 

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

Элемент customError и его атрибуты

атрибут режима

В элементе customError доступны 3 настраиваемых режима ошибок.Этот режим определяет, нужно ли обрабатывать ошибку или нет.

1) mode = «RemoteOnly» — это режим по умолчанию, который вы найдете после создания файла web.config. Это означает, что ошибки будут обрабатываться, а настраиваемые сообщения будут отображаться только для пользователей после развертывания веб-приложения на сервере. Разработчики увидят страницу ошибки по умолчанию, обработанную и отображаемую IIS.

2) mode = «Off» — Установите режим Off, и при просмотре будет отображаться страница ошибок по умолчанию как для разработчика, так и для пользователей.

3) mode = «On» — пользовательские страницы, предназначенные исключительно для отображения сообщений об ошибках, будут отображаться для разработчиков и онлайн-пользователей, если для режима установлено значение «On».

атрибут defaultRedirect

Атрибут defaultRedirect перенаправляет на страницу, специально предназначенную для обработки и отображения сообщений соответственно в случае ошибки, сгенерированной сервером. Очевидно, это зависит от типа режима, выбранного и установленного при развертывании приложения.

Перенаправленный URL-адрес может вести либо к простой HTML-странице, либо к более динамичной странице Asp.Net (.aspx). Динамические страницы могут быть очень полезны, в частности, для веб-администраторов, поскольку они могут записывать или отправлять им важную информацию. Эта информация может быть использована для исправления ошибок (если таковые имеются), а также для целей анализа.

Посмотрим, как это работает!

Как мы уже говорили ранее в этой статье, исключения или ошибки на стороне сервера должны обрабатываться с помощью Asp.Net Exception, мы создадим сценарий, в котором вызов «хранимой процедуры» SQL Server приводит к ошибке и не обрабатывается должным образом.

Хранимая процедура GetActiveEmployeeList возвращает список всех активных сотрудников компании при первой загрузке страницы. Как-то человек, ответственный за управление базой данных, забыл создать процедуру. Это происходит много раз, когда у вас слишком много объектов базы данных для управления и развертывания.

Поскольку процедуры нет в базе данных, сервер выдаст ошибку, сообщающую, что она существует.

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

Чтобы отобразить настраиваемую страницу ошибки в этом контексте, все, что вам нужно сделать, это установить customErrors mode = «On» или mode = «RemoteOnly» и перенаправить пользователя на настраиваемую страницу с помощью defaultRedirect = »MyCustomErrorPage.aspx ”

& ltcustomErrors mode = "On" defaultRedirect = "MyCustomErrorPage.aspx"> 

Разработайте свою персонализированную страницу с умом, чтобы она не только выглядела привлекательно и достойно для ваших онлайн-пользователей, но и ясно показывала им, насколько вы серьезны, предоставляя качественную информацию. Сделайте страницу интерактивной, например, просите пользователей высказать свои мнения и предложения, которые улучшат приложение в будущем.


Дочерний элемент customError и его атрибуты

Дочерний элемент & lterror /> отвечает за обработку очень специфических ошибок на основе определенного statusCode и, соответственно, перенаправляет на страницу, предназначенную для отображения сообщения об ошибке определенного типа.

& lterror statusCode = "404" redirect = "FileNotFound.htm" /> 

Атрибут statusCode

Этот атрибут используется для определения кода состояния https, который является числовым значением. Вы можете определить несколько атрибутов, используя несколько элементов & lterror />.

301 — перемещен навсегда
403 — запрещен
404 — не найден

Узнайте больше о statusCode здесь

атрибут перенаправления

Этот атрибут будет использоваться для перенаправления на страницу, предназначенную для отображения сообщений на основе определенного типа ошибки.Эти конкретные типы можно определить с помощью statusCode.

Предположим, что у вас есть страница с именем newArrivals.htm, для которой URL-адрес должен иметь вид www (точка) yoursite (точка) com / newArrivals.htm, и пользователь по ошибке вводит его как newArrivals.htm (без s). Поскольку страница без s не существует, сервер покажет сообщение об ошибке, что страница не может быть найдена.

Это конкретное сообщение и другие подобные сообщения по умолчанию, показываемые сервером, действительно дают представление (до некоторой степени) о том, что могло быть возможной причиной того, что страница не отображается.

Настоятельно рекомендуется иметь страницу Custom 404, которая может помочь пользователям получить разумную информацию об отсутствующей странице или странице с ошибками.

Чтобы перенаправить пользователя на специально разработанную страницу, вы можете использовать атрибут «redirect» элемента «& lterror />».

 & lterror statusCode = "404" redirect = "Custom404-Error.aspx" /> 

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

Заключение

Ошибки неизбежны, и они обязательно произойдут, поскольку они находятся в нашей ДНК. Машины и их приложения были разработаны людьми, которые тоже не застрахованы от ошибок. Но необходимо, чтобы мы профессионально справлялись с этими ситуациями, не создавая суеты, и предоставляли хорошую информацию нашим уважаемым пользователям.

Добавить комментарий

Ваш адрес email не будет опубликован.