Iis-7
.ashx 在 IIS7 上找不到類型錯誤,在 webdev 伺服器上沒有問題
我正在嘗試使AspNetComet.zip在 IIS7 上工作(一個簡單的彗星聊天實現)這是我的 web.config 的一部分。
<system.web> <httpHandlers> <add verb="POST" path="DefaultChannel.ashx" type="Server.Channels.DefaultChannelHandler, Server"/> </httpHandlers> </system.web> <system.webServer> <handlers> <add name="DefaultChannelHandler" verb="POST" path="DefaultChannel.ashx" type="Server.Channels.DefaultChannelHandler, Server"/> </handlers> </system.webServer>
當我在我的本地主機 IIS7 上發佈網站時,我收到一個錯誤:
POST http://localhost/DefaultChannel.ashx 500 Internal Server Error
Could not load type 'Server.Channels.DefaultChannelHandler
該項目的目標框架是 .Net 2.0 我嘗試了 .Net 2.0 的 Classic and Integrated Mode 應用程序池,但沒有成功。我還嘗試將項目轉換為 4.0,並嘗試了適用於 .Net 4.0 的經典和集成模式應用程序池,但沒有成功。我還嘗試通過 IIS 管理器的處理程序映射添加託管處理程序。
如果您有時間,請下載原始碼(184kb) 在您自己的機器上重現該問題。zip 包含一個 VS2010 解決方案 (.Net 2.0)。您也可以嘗試將其轉換為 .Net 4.0
無論如何,如果這很重要,我正在使用 Windows 7。如果您需要更多詳細資訊,請在下方留言。順便說一句,這在我的 webdev 伺服器上執行良好。
聽起來 AspNetComet DLL 對您的應用程序不可用。確保它們已上傳到 /bin 文件夾,如果它不是站點的根目錄,請確保託管 web.config 的文件夾被標記為應用程序。