Cor*_*ory 11 asp.net asp.net-mvc asp.net-web-api asp.net-web-api2
我已经开发了一个在本地运行良好的新WEB API 2,但是当我将相同的代码上传到我的生产服务器(在这种情况下是Arvixe)时,我得到的就是404.我花了两个小时在网上搜索,阅读论坛等等.并且找不到解决方案,所以我在这里问我最后的努力.
我目前只测试在Visual Studio中执行New Project> ASP.NET Web API 2空项目时创建的默认项目.这将创建一个单个的空项目ValuesController.您应该通过调用来响应JSON /api/values,但这甚至不起作用.
我正在使用Fiddler在本地和Web服务器上测试API.
http://localhost:1993/api/values <--- works great
Run Code Online (Sandbox Code Playgroud)
但
http://api.mydomain.com/api/values <--- returns 404
Run Code Online (Sandbox Code Playgroud)
注意:在这种情况下我创建了一个子域"api",但是API的代码的所有内容都与创建时没有变化.
为什么世界上这在本地工作,而不是在生产Web服务器上?
服务器返回 404(未找到)可能表明了很多事情。但是您可以使用以下步骤进行检查:
将一个简单的文本文档(如 readme.txt)添加到您的文件夹子域http://api.mydomain.com,并尝试访问该文档。如果您无法访问该文件,则意味着子域配置不正确。
使用“发布”功能发布 Web 服务,以便复制所有 DLL。
之后,再次尝试访问 Web ApI。
希望有帮助。