我设法创建了一个部署包并将其安装在IIS上。它无法正确提供内容。
当尝试访问不会路由到Web API应用程序的URL或者请求没有意义时,服务器会做出相应的响应。例如,尝试命中一个不存在的url会给出一个404,或者对一条只支持POST的路由发出GET请求,并且这个消息不允许使用405方法:
{
"Message": "The requested resource does not support http method 'GET'."
}
所有其他请求都给出了403个禁止的错误。对我来说,这表明路由工作正常,还有一些其他配置错误。我已经尝试了这里列出的“坏”和“好”解决方案:http://www.britishdeveloper.co.uk/2010/06/dont-use-modules-runallmanagedmodulesfo.html,但没有任何区别。
我注意到应用程序没有创建用户数据库表,因为它是我第一次运行应用程序时自动执行的。我认为这可能是相关的。
我相信IIS配置正确;它具有.NET 4和应用程序池的集成模式。我已确认通过“添加/删除Windows功能”对话框安装了ASP.NET 4.5。
我尝试托管的应用程序基于:https://github.com/MikeWasson/LocalAccountsApp。我做了很少的改动。一切都在当地很好。
服务器统计信息:
答案 0 :(得分:0)
因此,潜在的问题是我没有为该网站设置https绑定。这被一些事情所掩盖,主要是端点的行为不一致。一个端点被IIS或Web API重定向到https绑定(可能是因为某些设置强制执行),而另一个端点很高兴为我提供403/405错误。