我們在IIS站點中的應用程序下的虛擬目錄的物理子目錄中有一個web.config。事情是這樣的:忽略子目錄中的Web.config
- 網站
- 應用
- 的Web.config
- 虛擬迪爾
- 子目錄
- 的Web.config
- 子目錄
- 應用
在Web.config我們把這個配置中的System.Web:
<webServices>
<protocols>
<add name="HttpPost" />
<add name="HttpGet" />
</protocols>
</webServices>
我們啓用該子目錄中的ASMX兩種協議。
這一切都正常工作一段時間後,它只是停止和這些協議停止工作。我們重新啓動IIS並重新開始工作。
爲了解決這個問題,我們使用了一種解決方法將該配置添加到應用程序Web.config中,然後它正常工作。但是我們希望避免更改應用程序Web.config,而是使子目錄Web.config工作。
任何想法爲什麼ASP.Net會在一段時間後停止考慮子目錄Web.config?
我們在Windows Server 2003,IIS 6,ASP.Net 2.0上託管。
對ASMX的HTTP POST請求停止工作。我們得到的錯誤是System.InvalidOperationException與此消息:
請求格式無法識別的URL意外以'/ blah'結尾。
堆棧跟蹤爲:
at System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler(Type type, HttpContext context, HttpRequest request, HttpResponse response)
at System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext context, String verb, String url, String filePath)
at System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, VirtualPath path, String pathTranslated, Boolean useAppConfig)
at System.Web.HttpApplication.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
我編輯了這個問題,在服務啓動失敗之後爲HTTP POST請求包含異常消息和堆棧跟蹤 – 2010-10-18 16:48:33
另外,忘記提及我實際使用.Net Reflector查看.Net代碼並發現特定的異常當它認爲HTTP POST不被允許時拋出。 – 2010-10-18 16:50:23
你好,我有完全相同的問題....你有解決方案嗎?謝謝! – 2011-01-18 20:44:58