![](/img/trans.png)
[英]HttpClient certificate when hosted in IIS/Asp.NET Application not work
[英]Simple controller routing doesn't work in IIS for asp.net site hosted in IIS
尝试在 IIS 中本地托管 rest 服务。在 IIS Express 中一切正常,但一旦我尝试在 IIS 中本地托管,路由就不起作用。
msbuild /p:Configuration=Release /p:ProcessorArchitecture=x86 -r:False
中的二进制 output 文件夹Anonymous Authentication
http
到端口 8000 http://localhost:8000/
查看以下内容http://localhost:8000/api/HeartBeat
时,我都会收到404 - Not Found
。我的 WebApiConfig class 设置了默认路由。
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
这是controller
public class HeartBeatController : ApiController
{
// GET: api/HearBeat/5
public HttpResponseMessage Get()
{
return new HttpResponseMessage(HttpStatusCode.OK);
}
}
如果我在 IIS Express 中运行它并导航到相同的 url,我会得到 200。我还尝试使用Get-WebUrl
检查 powershell 中的 URL,它显示 ProtocolError 但我不知道是什么或为什么。 而 IIS 经理似乎没有抱怨什么。
PS C:\Windows\system32> Get-WebURL -PSPath "IIS:\Sites\Test" | Format-list
Status : ProtocolError
ResponseUri : http://localhost:8000/
Description : Forbidden
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.