我有一個Web API服務放在https子域。我使用溫莎城堡創建所有類(每個Web請求),從控制器到域對象。如何防止POST請求上的應用程序池停止?
我測試了本地機器上的所有操作,還使用了提琴手。一切正常。並沒有發生內存泄漏。而且我們還有一名手機程序員,他能夠處理所有的操作,而且每件事情都很好。
但在https上託管後,通過向web api URL發送每個請求,應用程序池停止。
但授權請求正常工作。我的應用程序出了什麼問題?這裏是我的代碼到配置文件:
public static class WebApiConfig
{
public static void Register(HttpConfiguration config, IAppBuilder app)
{
// Web API configuration and services
var container =Bootstrapper.WireUp();
ConfigCors(container, config);
RegisterControllers(container);
UserManagement.Config.Bootstrapper.WireUp(container);
config.Services.Replace(typeof(IHttpControllerActivator), new WindsorControllerActivator(container));
container.Register(Component.For<IDataProtectionProvider>().ImplementedBy<DpapiDataProtectionProvider>()
.UsingFactoryMethod(x => app.GetDataProtectionProvider()));
// Web API routes
config.MapHttpAttributeRoutes();
config.AddFiveLevelsOfMediaType();
config.Routes.MapHttpRoute(
name: "DefaultApiWithAction",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
//config.Routes.MapHttpRoute("DefaultApiWithId", "Api/{controller}/{id}", new { id = RouteParameter.Optional }, new { id = @"\d+" });
}
private static void ConfigCors(IWindsorContainer container, HttpConfiguration config)
{
var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);
}
檢查服務器的事件日誌,死了池的錯誤可能記錄在那裏 –