2013-04-26 98 views
1

我有一個在開發環境中工作的MVC4 WebApi項目,但在部署到生產時出錯。 我在執行POST時得到了httperror 405,在做GET時出現了404錯誤。我知道問題在於我的路線是由錯誤的模塊服務的,但無法弄清楚什麼是錯誤的。在POST中獲取錯誤405,在GET中獲取404

這裏是失敗請求日誌POST

ModuleName DirectoryListingModule 
Notification 128 
HttpStatus 405 
HttpReason Method Not Allowed 
HttpSubStatus 0 
ErrorCode 2147942401 
ConfigExceptionInfo 
Notification EXECUTE_REQUEST_HANDLER 
ErrorCode Incorrect function. (0x80070001) 

這裏是失敗請求日誌GET

ModuleName IIS Web Core 
Notification 16 
HttpStatus 404 
HttpReason Not Found 
HttpSubStatus 0 
ErrorCode 2147942402 
ConfigExceptionInfo 
Notification MAP_REQUEST_HANDLER 
ErrorCode The system cannot find the file specified. (0x80070002) 

我已經在黑板上嘗試了很多解決方案,但它們都沒有解決我的問題。 我的環境是Server 2008 R2,IIS7,我重新安裝了.NET 4.0框架,MVC 4.沒有安裝WEBDAV,我在web.config中。 我已經確定在.net 4.0下以集成模式運行的appPool也確保安裝了所有的Windows更新。

任何想法我可以嘗試什麼?非常感謝。

+0

在我原來的帖子中出現錯誤。我在web.config中有runAllManagedModulesForAllRequests =「true」 – user1669811 2013-04-26 18:34:26

+1

我通過在我的控制器中更改我的POST操作來解決此問題,以接受具有適當參數作爲屬性的複雜對象,而不是值類型作爲方法參數。 – 2013-05-28 12:20:29

回答

0

我曾經有過類似的問題,但是當我們改變appPool在Classic模式下運行時,它得到了解決。

這不是和你一樣的問題,因爲我們沒有嘗試POST,但是在執行GET時卻遇到了404錯誤。

1

用戶單詞jared在他的評論中提供瞭解決這個問題的答案。這個問題導致了我幾個小時的痛苦,並嘗試了其他幾個死路。爲了幫助他人輕鬆找到這個解決方案,我添加了這個答案,以便撇渣器不會忽略它。