2011-07-14 98 views
1

我在ASP.NET中創建了HttpModule,併成功配置它。 我的問題是,該模塊只有當我給URL擴展名(即aspx),如果我不放任何擴展名,該模塊將不會被調用。HttpModule捕獲所有擴展

我該如何解決這個問題?

感謝

+0

您使用的是哪個版本的IIS? – Justin

+0

5.1 .............. – Himberjack

回答

3

的問題是,該請求沒有被ASP.Net處理 - IIS 6和下面僅調用ASP.Net當它遇到它與ASP.Net相關聯,例如一個文件名。 aspx或.axd文件擴展名。

這與嘗試將MVC應用程序部署到IIS 6或更低版本時面臨的問題類似(IIS無法將請求路由到ASP.Net),並且解決方案也類似 - 您可以單獨映射每個擴展名希望看到處理到aspnet_isapi.dll的ASP.Net處理程序(它仍然不適用於沒有擴展名的URL),或者您需要使用通配符映射來告訴IIS將所有請求指向ASP.Net - 請注意,這將包括圖像和其他靜態文件,這些文件的處理效率可能低於正常情況。

文章Deploying ASP.NET MVC to IIS 6討論了將MVC應用程序部署到IIS 6的解決方案 - 這裏討論的潛在解決方案比我在這裏有更多的細節。