2016-02-02 4 views

ответ

1

Выборочная ошибка, как показано @Shirish будет работать.
Но в случае перезагрузки сервера и более длительного обновления системы эта страница не будет отображаться, так как все IIS и ОС могут быть недоступны. Таким образом, единственный способ - это иметь какой-то (обратный) прокси-сервер, который находится перед вашим веб-сервером, который будет следить за своим здоровьем, а затем отказываться от всех запросов на другом сервере или просто обслуживать страницу с ошибкой до тех пор, пока веб-сервер возвращается в Интернет.

Например, если вы размещаете на Azure, у вас может быть балансировщик нагрузки перед вашим веб-приложением или виртуальной машиной. Балансировщик загрузки доступен, если вы создаете две службы в одном наборе доступности. Он будет контролировать работоспособность каждой службы за определенный промежуток времени (например, 5 секунд), а затем трассировать трафик соответственно. Вы можете включить второй VM/WebApp только тогда, когда вы обновляете первую виртуальную машину, чтобы снизить стоимость.

0

Вы можете сделать, как показано ниже код в web.config -

<configuration> 
    <system.web> 
    <customErrors defaultRedirect="GenericError.htm" 
        mode="RemoteOnly"> 
     <error statusCode="500" 
      redirect="InternalError.htm"/> 
    </customErrors> 
    </system.web> 
</configuration> 

Для получения более подробной проверки обработки ошибок это url- https://msdn.microsoft.com/en-us/library/bb397417.aspx

1

В файле web.config разместите этот код внутри <system.web></system.web> и создайте контроллер Error и три действия Error500 и т. Д. И соответствующие страницы просмотра. если iis возвращает status 500, тогда появится страница Error500. Вы можете создавать свои собственные страницы ошибок.

<customErrors mode="On" defaultRedirect="Error"> 
    <error statusCode="500" redirect="~/Error/Error500" /> 
    <error statusCode="404" redirect="~/Error/Error404" /> 
    <error statusCode="403" redirect="~/Error/Error403" /> 
</customErrors> 
+0

@ anand - Предоставить код не будет работать в любых условиях. потому что, когда сервер остановится, ваш предоставленный URL-адрес не будет выполнен. и вы получите IIS Server Error. Поэтому нет смысла кода - Shirish

+0

вы пробовали его – anand

+0

haha ​​.. :) Never .. – Shirish

Смежные вопросы