2011-02-15 75 views
1

我需要一個簡單的HttpHandler來處理ASP.NET項目中特定的不存在的路徑。我使用sitefinity 4.我寫的處理程序,但每當我試圖運行的網站,我得到一個令人沮喪的錯誤ASP.NET HttpHandler和WebResource.axd問題

The WebResource.axd handler must be registered in the configuration to process this request. 

我把處理程序配置文件的system.web部分,但它看起來像VS2010仍然使用IIS 6爲它的內置Web服務器,所以我繼續前進,並將其切換到使用IIS 7(本地),並將處理程序的註冊移動到system.webServer和它當我擊中一個不存在的作品t網址,但如果我試圖正常訪問網站(有效的網址),我再次得到dang錯誤。

它工作過一次,給了我一個有效的網址上正確的網站,但現在它只是繼續給我麻煩。

我該如何解決這個問題?我不想將該條目添加到配置中,因爲它在創建項目時並不存在,並且僅在添加我的處理程序時才啓動。

編輯:只有當我使用Path =「*」時發生,所以我如何做通配符?我不想映射處理程序來捕捉404頁面。

+0

您是否嘗試將WebResource.axd註冊爲錯誤「建議」?如果是這樣,結果如何? – 2011-02-15 05:35:03

+0

我沒有把它放在system.webServer中,但我確實把它放在了system.web中,它現在在那裏......不工作。但這是在IIS 7(本地),所以這可能是爲什麼它仍然抱怨。 – 2011-02-15 05:38:53

回答

1

Froget it。即使我知道我不是唯一需要這樣做的人,但似乎沒有人知道。我得到404工作,但只有當我要求一個文件,而不是一個文件夾,以至於一個半身像。

我發現Global.asax會在集成模式下命中,所以我只是將我的代碼移動到Application_BeginRequest(),它工作得很好。如果其他人有更好的答案,我會給他們信用。

-2

對於iis7和iis7.5,處理程序在system.webserver中註冊。 system.web中的httphandlers和httpmodules將被忽略,並用於IIS 6和經典模式。

我希望這有幫助!