0

EPiServer 7 MVC アプリケーションにいくつかの css ファイルを実装しました。

<link href="/Static/Web/CSS/main.css" rel="stylesheet" />
<link href="/Static/Web/CSS/print.css" rel="stylesheet" />

ログを見ると、ページが読み込まれるたびにログに表示されるため、ルーティングは少しトリガーに満足している可能性があります。

DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/print.css' since it doesn't start with '~/EPiServer/Shell/2.0.86'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/print.css' since it doesn't start with '~/EPiServer/EPiServer.Packaging.UI/2.0.86'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/print.css' since it doesn't start with '~/EPiServer/CMS/2.0.79'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/print.css' since it doesn't start with '~/episerver'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/print.css' since it doesn't start with '~/modules'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/main.css' since it doesn't start with '~/EPiServer/Shell/2.0.86'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/main.css' since it doesn't start with '~/EPiServer/EPiServer.Packaging.UI/2.0.86'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/main.css' since it doesn't start with '~/EPiServer/CMS/2.0.79'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/main.css' since it doesn't start with '~/episerver'
DEBUG EPiServer.Shell.Web.Routing.ModuleRouteCollection: Not routing '~/Static/CSS/main.css' since it doesn't start with '~/modules'

インクルードされたファイルをルーティングしようとするのはなぜですか? また、それを無効にするにはどうすればよいですか?

ありがとう

4

1 に答える 1

1

EPiServer は、RouteTableCMS/Admin/Modules などに使用されるいくつかのルートを に追加します。

/Static/Web/CSS/main.css をリクエストすると、ルーティングはルート テーブルを順番に通過し、一致する最初のルートを見つけようとします。ルートModuleRouteCollectionは、URL が ~/episerver または ~/modules などで始まる場合にのみ一致します。そうでない場合は、デバッグ メッセージをログに記録しますが、デバッグ メッセージをログに記録するように log4net を構成した場合にのみです。

これらのメッセージを回避したい場合は、この StackOverflow の投稿「log4net: Configure to ignore messages from a specific class」を見て、「EPiServer.Shell.Web.Routing.ModuleRouteCollection」名前空間を無視することができます。

EPiServer 7 サイトの典型的なルート テーブル:

[0]: {[ModuleRouteCollection RoutePath="~/episerver/Shell/2.1.90", Routes=[Shellepi,Shelldgrid,Shellput-selector,Shellxstyle]]}
[1]: {[ModuleRouteCollection RoutePath="~/episerver/EPiServer.Packaging.UI/2.1.90", Routes=[EPiServer.Packaging.UIepi-packaging]]}
[2]: {[ModuleRouteCollection RoutePath="~/episerver/CMS/2.1.82", Routes=[CMSepi-cms,CMStinymce,CMSepi/cms]]}
[3]: {[ModuleRouteCollection RoutePath="~/modules", Routes=[App]]}
[4]: {[ModuleRouteCollection RoutePath="~/episerver", Routes=[CMS,EPiServer.Packaging,EPiServer.Packaging.UI,Shell,Find]]}
[5]: {EPiServer.Web.Routing.StaticFileRemapRoute}
[6]: {EPiServer.Web.Routing.StopRoutingForExistingFileRoute}
[7]: {System.Web.Mvc.RouteCollectionExtensions.IgnoreRouteInternal}
[8]: {EPiServer.Web.Routing.ContentRoute}
[...]
于 2013-12-06T14:23:25.093 に答える