4

私の Web.config には次のものがあります。

<httpHandlers>
    . . .
    <add verb="GET,HEAD" path="/" type="Vis.Web.BootHandler, Vis" />
</httpHandlers>

その HTTP ハンドラーは、動作するかどうかを確認するためだけに、静的な HTML ページを返します。

Web アプリケーション (Default.aspx などがない) を実行すると、代わりに既定のディレクトリ リストが表示されます。パスを変更すると、"/foo"完全に正常に動作します。

パスを試し""てみましたが、ディレクトリのリストも表示されます。それを持ってから、 for 、、および"/foo"に URL マッピングを追加するのと同じです。"""~""~/""/"

Web ルートを処理したり、HTTP ハンドラーでディレクトリ リストを上書きするにはどうすればよいですか?

4

2 に答える 2

2

更新: コメントについて IIS の機能が必要なため、これは開発サーバーでは実行できません。

オリジナル: asp.net DLL にワイルドカード アプリケーション マッピングを追加して、すべての要求 (ディレクトリに対するものも含む) が .net ランタイム、したがって HTTP ハンドラーを介して実行されるようにする必要があります。

http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/IIS/5c5ae5e0-f4f9-44b0-a743-f4c3a5ff68ec.mspxを確認してください。

詳細については

于 2009-05-09T13:19:27.517 に答える
0

@Greg B が言ったことに加えて、ダミーの default.aspx ページを追加し、/* パスを使用してハンドラーを登録する必要があります。

<httpHandlers>
    . . .
    <add verb="GET,HEAD" path="/*" type="Vis.Web.BootHandler, Vis" />
</httpHandlers>
于 2009-05-09T13:27:19.830 に答える