简而言之,一切都在本地机器上工作,但在部署到服务器“A”时却不行。
我确定服务器“A”中缺少某些东西,但我不知道它是什么,并且我无权在那里进行更改或正确测试。
因此,我在这里寻求帮助和解决问题的想法,以便我可以建议服务器“A”的负责人,或者我需要对我的项目进行任何更改以使其在那里工作。
话虽如此,让我们谈谈我的项目......
我正在使用 Web Api,并且在 global.asax 中定义了一个路由,如下所示:
RouteTable.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = System.Web.Http.RouteParameter.Optional });
我正在使用 Jquery ajax 和 Kendo UI 调用控制器,如下所示:
(这是一个假例子,只是为了证明这一点)
read: {
url: function () {
return "../api/Member/123";
}
}
同样,在本地服务器上一切正常,但是当我部署它时,我会得到每个 web api 调用:
404 - File or directory not found.
没有其他的。
需要考虑的事项:
- 我正在使用 .NET 4.0 框架编译项目。
- 服务器“A”上的网站设置为使用 .NET 4.0 经典版(这可能是个问题吗?)
- 我不认为 MVC 4 安装在服务器“A”中。Web Api 是否需要 MVC?
- 服务器“A”正在运行 IIS 7
我在 web.config 文件中添加了以下内容,但仍然出现 404 错误:
<modules runAllManagedModulesForAllRequests="true"/>
如果您需要任何其他信息,请告诉我。
谢谢你的帮助!!