トップ回答者
IIS6でWeb.configを使ってワイルドカードアプリケーションマップ設定

質問
-
お世話になります。
とある事情により、ASP.NET WebFormで作成したアプリケーションに対して、全ての拡張子のリクエストを処理させる必要が生じました。
通常はpngやcssなどの静的リソースは処理できませんが、ハンドラマッピングの設定で全てaspnet_isapi.dllに流すようにしています。
ただし、この設定を毎回手動でやるのは面倒なので、web.configに次の記述を追加することで自動化させています。
<system.webServer>
<handlers>
<add name="TestSite" path="*" verb="*" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
</handlers>
</system.webServer>
※アプリケーションは32bitで動かしている(アプリケーションプールで32bit有効化設定)ので、aspnet_isapi.dllも32bit版を使っています。
しかし、この方法はIIS7以降では問題無いのですが、IIS6で使えないため、困っています。
IIS6の場合、拡張子のマッピングで「*」という拡張子は設定できず、代わりに「ワイルドカードアプリケーションマップ」という設定を使うようなのですが、それをweb.configで実現する方法が分かりません。
手動で設定すれば期待通りに機能することは確認済みです。
どなたか、何か情報がありましたら、ご教示頂けないでしょうか。
よろしくお願いします。
回答
-
Web.config は ASP.NET 側の機能で、IIS6 では ASP.NET は IIS 自体に統合されていないので、IIS6 の Web.config でどうこうしようというスタンスが無理そうな気がします。(ある意味、IIS6 からは ASP.NET は CGI のような扱いといえるかもしれません。)
ISAPI 拡張を開発して、それをワイルドカードアプリケーションマップとして IIS マネージャから設定する、という流れになるのではないでしょうか。
http://technet.microsoft.com/ja-jp/library/cc737254(v=ws.10).aspxISAPI 拡張の開発に関しては上の中にリンクがありますが、英語情報しかないようですし、それなりにハードルは高いかと思います。
MCITP(Database Developer/Database Administrator)
すべての返信
-
Web.config は ASP.NET 側の機能で、IIS6 では ASP.NET は IIS 自体に統合されていないので、IIS6 の Web.config でどうこうしようというスタンスが無理そうな気がします。(ある意味、IIS6 からは ASP.NET は CGI のような扱いといえるかもしれません。)
ISAPI 拡張を開発して、それをワイルドカードアプリケーションマップとして IIS マネージャから設定する、という流れになるのではないでしょうか。
http://technet.microsoft.com/ja-jp/library/cc737254(v=ws.10).aspxISAPI 拡張の開発に関しては上の中にリンクがありますが、英語情報しかないようですし、それなりにハードルは高いかと思います。
MCITP(Database Developer/Database Administrator)