Создание пользовательской страницы ошибок в Umbraco CMS - PullRequest
8 голосов
/ 26 сентября 2008

Я работаю на клиентском сайте, который использует Umbraco в качестве CMS. Мне нужно создать пользовательскую страницу ошибки 404. Я пытался сделать это в конфигурации IIS, но Umbraco отменяет это.

Кто-нибудь знает, как создать пользовательскую страницу с ошибкой 404 в Umbraco? Есть ли способ создать пользовательскую страницу ошибок для ошибок времени выполнения?

Ответы [ 5 ]

18 голосов
/ 26 сентября 2008

В /config/umbracoSettings.config изменить <error404>1</error404> " 1 " с идентификатором страницы, которую вы хотите показать.

<errors>
   <error404>1</error404> 
</errors>

Другие способы сделать это можно найти на Не найдены обработчики

9 голосов
/ 04 июня 2012

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

В /config/umbracoSettings.config (сам файл объясняет его использование):

<errors>
  <!-- the id of the page that should be shown if the page is not found -->
  <!--        <errorPage culture="default">1</errorPage>-->
  <!--        <errorPage culture="en-US">200</errorPage>-->
  <error404>2664</error404>
</errors>

В /web.config

<system.webServer>
  <!-- Some other existing stuff -->
  <httpErrors existingResponse="PassThrough" />
</system.webServer>

(Примечание. Это .NET 4)

8 голосов
/ 15 июля 2009

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

Конфиг немного меняется. Вместо

<errors>
  <error404>1050</error404>
</errors>

вы бы сейчас написали

<errors>
  <errorPage culture="default">1</errorPage>-->
  <errorPage culture="en-US">200</errorPage>-->
</errors>

Ура, / Dirk

1 голос
/ 01 октября 2010

Сначала создайте страницу ошибки (и шаблон) в вашей установке umbraco. Давайте скажем error.aspx. Опубликуйте это. Затем отредактируйте config / umbracoSettings.config .

Under <errors> section
    <error404>1111</error404>

Где 1111 - это идентификатор узла Umbraco для страницы error.aspx

Идентификатор узла можно найти, наведя указатель мыши на узел ошибки в разделе content . Обычно это 4-значное число.

Затем отредактируйте web.config :

    In <appSettings> section
    change <customErrors mode as show below:
<customErrors mode="RemoteOnly" defaultRedirect="~/Error.aspx"/>
0 голосов
/ 26 апреля 2011

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

    <errors>
        <!-- the id of the page that should be shown if the page is not found -->
        <!--        <errorPage culture="default">1</errorPage>-->
        <!--        <errorPage culture="en-US">200</errorPage>-->
        <error404>
            <errorPage culture="default">1</errorPage>
            <errorPage culture="ru-RU">1</errorPage>
            <errorPage culture="en-US">2</errorPage>
        </error404>
    </errors>

Обратите внимание на элемент error404, который окружает элементы errorPage, а также комментарии, в которых пропущена эта небольшая, но важная деталь ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...