14

ローカルのIIS5.1Webサーバーを介したASP.NETMVCアプリケーションの実行に関して問題が発生しています。これらの問題はIgnoreRoutesに関連していると思いますが、問題を解決するようにIgnoreRouteを作成することはできないようです。

問題:

elmahエラーページ(localhost / mvcapplication1 / elmah.axd)を表示できますが、CSSがなく、リンクが機能しません。

再現する手順

1)ASP.NETMVC1.0アプリケーションを作成します

2)Elmahを追加します。アセンブリをダウンロードしてプロジェクトに追加し、Elmahセットアップ手順の手順を使用します

3)[プロパティページ]->[Web]からアプリケーションを[ローカルIISWebサーバーを使用する]に切り替えます

4)ワイルドカードマッピングを追加します。つまり、IISを開き、[プロパティ]->[仮想ディレクトリ]->[構成]->[追加]:実行可能ファイル:C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_isapi.dll拡張子:。*制限先:GET、HEAD、POST、DEBUG「ファイルが存在することを確認してください」のチェックを外します。

5)routes.IgnoreRoute("{resource}.axd/{*pathInfo}");Global.aspxのRegisterRoutesに存在することを確認します。ちなみに私もやってみましたroutes.IgnoreRoute("elmah.axd");

今..アプリを実行し、localhost / mvcapplication1/elmah.axdを起動します。

CSSとリンクは壊れていません。

ワイルドカードマッピングを削除すると、すべて問題ありませんが、アプリケーションのURLルーティングが機能しなくなります。私はそれを理解していますが、適切なIgnoreRouteスキームを使用してelmah.axdをプルアップできるはずです。

考え?

4

1 に答える 1

12

FixIIS5xWildcardMappingモジュールをweb.configに追加します。

<httpModules>
    <add name="FixIIS5xWildcardMapping" type="Elmah.FixIIS5xWildcardMappingModule, Elmah"/>
</httpModules>
于 2009-06-11T16:54:33.003 に答える