1

ASP.NETアプリケーションでは、送信されるすべてのCSSファイルにいくつかの変更を加える必要があります。

そこで、(アプリ自体の内部に)HttpHandlerを作成し、次のように追加しました。

<add verb="*" path="*.css" type="MyWebsite.CssTestHandler,MyWebsite"/>

Web.configに移動しsystem.web/httpHandlers、次のようにハンドラーを変更しました。

public void ProcessRequest(HttpContext context)
{
    context.Response.Clear();
    context.Response.Write("Hello World");
    context.Response.End();
}

ただし、CSSファイルは以前とまったく同じであるため、ハンドラーは無視されます。

私が間違っているのは何ですか?

4

3 に答える 3

2

IIS でワイルドカード マップをセットアップする必要があります。次のリンクを参照してください。

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/5c5ae5e0-f4f9-44b0-a743-f4c3a5ff68ec.mspx?mfr=true

これにより、CSS ファイルの要求が IIS だけでなく ASP.NET によって処理されるようになります。

アプリケーションが非常に高いトラフィックを処理する場合は、このマッピングを .css ファイルのみに設定することを検討してください。または、ファイルを変更するのではなく、ページ内の CSS データを変更することをお勧めします。

于 2010-06-28T13:55:23.250 に答える
1

IIS バージョン (6、7 クラシック パイプラインおよび 7 統合パイプライン) の 3 つのケースすべての手順については、このページを確認してください: http://learn.iis.net/page.aspx/508/wildcard-script-mapping-and-iis- 7 統合パイプライン/

それによると、統合パイプラインの場合、次の構成パラメーターを追加する必要があります。

runAllManagedModulesForAllRequests="True"
于 2010-06-28T13:58:23.243 に答える
1

IIS は CSS ファイルを無視するため、アプリは CSS ファイルを無視します。

IIS の実行可能ファイルにマップされていません。 代替テキスト http://www.fastpics.net/sharepics/imih41904722.jpg

.css 拡張子を追加して、それを .NET dll にマップしてみてください。

于 2010-06-28T13:56:44.450 に答える