Страница ошибки 7.1 для 404 не появляется

У меня есть установка dnn 7.1.1, которую я тестирую для производства. Я думал, что эта версия поддерживает страницу ошибки 404. Но независимо от того, какой тип ошибочной ссылки я передаю на сайт DNN, эта страница не отображается, и я не вижу ее при администрировании / администрировании страницы. Должен ли я включить эту функцию где-нибудь? Это новая установка, и на следующей странице написано, что она должна быть включена по умолчанию: DNN 404 wiki Я не смог найти никаких настроек в корневом web.config. Расширенный поставщик URL включен.

Может кто-нибудь помочь мне понять, как исправить эту страницу ошибки 404

заранее спасибо

РЕДАКТИРОВАТЬ 1:

Может ли кто-нибудь подтвердить, что 7.1.1 является минимальной версией для этой функции, или это только в профессиональной версии, я использую платформу DNN.

РЕДАКТИРОВАТЬ 2:

Смотрите ЗДЕСЬ для ссылки на трекер проблем DNN. Я пробовал это и с новой установкой и обновлением от 7.0.6, и проблема продолжается. Если вы запрашиваете несуществующий ресурс с расширением, вы получаете общую ошибку asp-сервера:

Ошибка сервера в приложении '/'

Этот ресурс не может быть найден.

Описание: HTTP 404. Ресурс, который вы ищете (или одна из его зависимостей), мог быть удален, изменилось его имя или временно недоступен. Пожалуйста, просмотрите следующий URL и убедитесь, что он написан правильно.

Запрашиваемый URL: /blob.aspx

если вы запрашиваете страницу без расширения типа / blob, вы получаете одну из двух ошибок:

404 Not Found
The requested Url does not return any valid content.
Administrators
Change this message by configuring a specific 404 Error Page or Url for this website.

ИЛИ ЖЕ

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

В разделе администрирования / управления страницей сайта нет ни страницы ошибки 404, ни обновления, ни новой установки. Новая установка была развернута с помощью веб-сайта Azure Gallery для DNN 7.1.1.

Я вручную обновил экземпляр 7.0.6 до 7.1.1, чтобы получить другую среду тестирования.

РЕДАКТИРОВАТЬ 3:

Хорошо, я знаю, как это воспроизвести. Если вы создаете новый портал / сайт с пустым шаблоном, то под управлением администратора / страницы не будет страницы ошибки 404. Если вы создаете сайт с шаблоном английского языка по умолчанию, то страница управления ошибкой 404 отображается в списке управления страницами, а страница 404 отображается при запросе мертвой страницы.

Что я пытался: я скопировал страницу с ошибкой 404 с сайта шаблона по умолчанию на пустой сайт шаблона, надеясь, что это решит проблему. Это не так. Итак, теперь я думаю, что есть параметр, который нужно где-то включить, но я знаю, что его нет в файле web.config, потому что оба этих портала находятся в одном экземпляре dnn, и один работает, а другой нет, поэтому есть другое место, где я должен найти это.

РЕДАКТИРОВАТЬ 4:

У меня нет работы, кроме создания нового сайта с шаблоном по умолчанию и воссоздания сайта. Похоже, что эту ошибку планируется исправить в 7.2.1, как задокументировано ЗДЕСЬ

РЕДАКТИРОВАТЬ 5:

Я копался в базе данных, чтобы посмотреть, смогу ли я найти настройку, которая бы сделала эту работу. Единственный параметр, который я смог найти, был в настройках портала (он называется "AUM_ErrorPage404"), поэтому я продублировал его с помощью следующего сценария, но изменил портал и tabID, чтобы он соответствовал порталу, созданному с пустым шаблоном.

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

INSERT INTO [dbo].[PortalSettings](
       [PortalID]
      ,[SettingName]
      ,[SettingValue]
      ,[CreatedByUserID]
      ,[CreatedOnDate]
      ,[LastModifiedByUserID]
      ,[LastModifiedOnDate]
      ,[CultureCode])
  VALUES (
       [PortalID]
      ,'AUM_ErrorPage404'
      ,[TabID of 404 Page I Created]
      ,[CreatedByUserID]
      ,getdate()
      ,[CreatedByUserID]
      ,getdate()
      ,'en-us')

Я не нашел никаких настроек для страницы / вкладки 404 error в [TabSettings] для страницы, созданной в шаблоне по умолчанию, на самом деле в tabSettings не было записей для страницы ошибок, созданной на портале шаблонов по умолчанию.

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

AUM_ErrorPage404    371
DefaultAdminContainer   [G]Containers/Gravity/Title_h2.ascx
DefaultAdminSkin            [G]Skins/Gravity/2-Col.ascx
DefaultPortalAlias          test404
DefaultPortalContainer  [G]Containers/Gravity/Title_h2.ascx
DefaultPortalSkin           [G]Skins/Gravity/2-Col.ascx
EnableSkinWidgets           True
GettingStartedPageShown True
GettingStartedTabId 346
MaximumVersionHistory   5
PortalAliasMapping          CANONICALURL
SearchAdminInitialization   true
TimeZone                            Pacific Standard Time

Я не уверен, где еще искать в БД для установки на chnage

2 ответа

Решение

Хорошо, я получил это на работу!

Сценарий выше сделал свое дело:

INSERT INTO [dbo].[PortalSettings](
       [PortalID]
      ,[SettingName]
      ,[SettingValue]
      ,[CreatedByUserID]
      ,[CreatedOnDate]
      ,[LastModifiedByUserID]
      ,[LastModifiedOnDate]
      ,[CultureCode])
  VALUES (
       [PortalID]
      ,'AUM_ErrorPage404'
      ,[TabID of 404 Page I Created]
      ,-1
      ,getdate()
      ,-1
      ,getdate()
      ,'en-us')

Пропущенный шаг:

После добавления настройки для AUM_ErrorPage404 мне пришлось очистить кеш и перезапустить приложение. Теперь это работает.

После некоторых исследований и часов разочарования. Я обнаружил, что в версии 7.2.2 требуется новый параметр:

Таблица: PortalLocalization теперь содержит два поля: Custom404TabId и Custom500TabId, эти поля необходимо обновить с одинаковым значением PortalSetting AUM_ErrorPage404, AUM_ErrorPage500, поэтому при обновлении с версии ниже до 7.1, вероятно, вам придется обновить эти поля самостоятельно.

Надеюсь, это сэкономит время. Израиль Гарсия

Другие вопросы по тегам