Страница ошибки 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, вероятно, вам придется обновить эти поля самостоятельно.
Надеюсь, это сэкономит время. Израиль Гарсия