Подтвердить что ты не робот

Страница пользовательской ошибки для ошибки Http 503

Мне нужно отправить страницу с настраиваемой ошибкой для 503 ошибок, созданных моим веб-сайтом asp.net. Я попытался имитировать условие, отключив пул приложений (не работает) и наводя свое приложение запросами. Даже несмотря на то, что IIS отправляет мне страницу с ошибкой по умолчанию 503, и даже если я попытался установить собственный URL-адрес в IIS и ASP.NET для этого кода ошибки, он все равно возвращает мне страницу ошибок по умолчанию 503!

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

4b9b3361

Ответ 1

Иди в те же проблемы, но мне просто удалось заставить это работать для нас, используя страницу ASP ASP.NET в приложении .NET(я не уверен, что она будет работать одинаково для apsx):

  • Убедитесь, что в IIS включен классический ASP. Стоит прочитать: http://blogs.iis.net/bills/archive/2007/05/21/tips-for-classic-asp-developers-on-iis7.aspx

  • Создайте классический ASP файл с именем Offline.asp и поместите его в корень вашего сайта со следующим содержимым:

    <%
    
    Response.Status = "503 Service Unavailable"
    Response.CacheControl = "no-cache"
    Response.AddHeader "Pragma", "no-cache"
    Response.Expires = -1
    
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            <meta name="robots" content="noindex,nofollow" />
            <title>Sorry, we're down for essential maintenance</title>
        </head>
        <body><h1>Sorry, we're down for essential maintenance</h1></body>
    </html>
    
  • Теперь в диспетчере IIS7 перейдите в раздел администрирования страниц ошибок, добавьте страницу пользовательской ошибки, например:

    Error Pages

    Add Custom Error Page

    Error Pages

Теперь, когда IIS получает 503, он отправляет содержимое браузера Offline.asp, а также код 503 (важный), чтобы поисковые системы не отображали ваши Страница ошибки!)

Теперь, если вы хотите отключить свое приложение в автономном режиме, вы можете просто настроить простое правило перенаправления, чтобы перенаправить все в автономный режим.

Ответ 2

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

Это описание того, когда оно происходит, указывает, что оно поступает непосредственно из http.sys, и все в Интернете, похоже, согласуется с тем, что его нельзя изменить. Я просмотрел параметры реестра http.sys, и нет ничего полезного.

http://technet.microsoft.com/en-us/library/cc781893(WS.10).aspx

Ответ 3

Взгляните на HttpContext.Current.Response.TrySkipIisCustomErrors. просто предложение.

Ответ 4

Насколько я вижу, страницы ошибок хранятся в папке% SystemDrive%\inetpub\custerr\< LANGUAGE-TAG > \< HTTP-CODE > .htm

Вы можете настроить пользовательские страницы ошибок для каждого веб-сайта в своем iis7 mmc.


изменить

По-видимому, нет пути от http.sys в случае 503 - единственный выбор, который вы получаете, это отправить сообщение об ошибке по умолчанию http 503 или прекратить соединение на уровне tcp.