2

実稼働用にテストしている dnn 7.1.1 インストールがあります。このバージョンは 404 エラー ページをサポートしていると思いました。しかし、DNN サイトにどのタイプの誤った URL を渡しても、このページが表示されず、管理者/ページ管理の下に表示されません。どこかでこの機能を有効にする必要がありますか? これはまったく新しいインストールであり、次のページには、デフォルトでオンにする必要があると記載されています: DNN 404 wiki ルート web.config に設定が見つかりませんでした。高度な URL プロバイダーが有効になっています。

この 404 エラー ページを実装する方法を教えてください。

前もって感謝します

編集1:

7.1.1 がこの機能の最小バージョンであることを確認できますか、それともプロフェッショナル バージョンのみでしょうか。私は DNN プラットフォームを使用しています。

編集2:

DNN イシュー トラッカーへのリンクについては、こちらを参照してください。新規インストールと 7.0.6 からのアップグレードの両方でこれを試しましたが、問題は解決しません。拡張子を持つ存在しないリソースを要求すると、一般的な asp サーバー エラーが発生します。

「/」アプリケーションでサーバー エラーが発生しました。

リソースが見つかりません。

説明: HTTP 404。探しているリソース (またはその依存関係の 1 つ) は、削除されたか、名前が変更されたか、一時的に利用できない可能性があります。次の URL を見直して、スペルが正しいことを確認してください。

要求された URL: /blob.aspx

/blob のような拡張子なしでページをリクエストすると、次の 2 つのエラーのいずれかが表示されます。

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 エラー ページはありません。新しいインストールは、DNN 7.1.1 の Azure Web サイト ギャラリーを使用してデプロイされました。

7.0.6 インスタンスを手動で 7.1.1 にアップグレードして、別のテスト環境を取得しました。

編集3:

さて、私はこれを再現する方法を知っています。空白のテンプレートを使用して新しいポータル/サイトを作成すると、管理者/ページ管理の下に 404 エラー ページはありません。デフォルトの英語のテンプレートでサイトを作成すると、404 エラー ページがページ管理に表示され、デッドページをリクエストすると 404 ページが表示されます。

試したこと: 404 エラー ページを既定のテンプレート サイトから空のテンプレート サイトにコピーして、これで問題が解決することを期待しました。それはしませんでした。したがって、どこかで有効にする必要がある設定があると思いますが、これらのポータルは両方とも同じ dnn インスタンスにあり、一方は機能し、もう一方は機能しないため、web.config ファイルには含まれていないことがわかっています。これを見つけなければならない別の場所。

編集4:

デフォルトのテンプレートを使用して新しいサイトを作成し、サイトを再作成する以外に回避策はありません。ここに記載されているように、このエラーは7.2.1で修正される予定のようです。

編集5:

データベースを掘り下げて、これを機能させる設定を見つけることができるかどうかを確認しました。見つけた唯一の設定はポータル設定 (「AUM_ErrorPage404」と呼ばれる) にあったため、次のスクリプトでそれを複製しましたが、空白のテンプレートで作成されたポータルと一致するようにポータルとタブ ID を変更しました。

これにより、ポータルにエラー ページを割り当てる設定がポータル設定に追加されました。この設定は、空白のテンプレートではなく、デフォルトのテンプレートで見つかりました。だから私はそれが私の問題を解決することを期待してそれを追加しました。それはしませんでした。

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')

デフォルト テンプレートで作成されたページの [TabSettings] に 404 エラー ページ/タブの設定が見つかりませんでした。実際、デフォルト テンプレート ポータルで作成されたエラー ページの 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

設定を変更するために DB を他にどこで探すべきかわかりません

4

2 に答える 2