Algumas ideias:
- A exceção 0x0000005 parece ter sido negada a permissão.
- Todas as exceções são para o módulo webdav. Se você não precisar, tente desativá-lo.
Eu tenho um site com um subdomínio como este:
meunomededomínioé"a.com" e o nome do subdomínio é "api.a.com". Publiquei um serviço no subdomínio. Funciona bem em pedidos de obtenção. mas antes de obter a solicitação POST (por api), o pool de aplicativos do subdomínio é interrompido.
Então eu instalei uma ferramenta de diagnóstico de depuração no servidor. Recebo 5 erros após cada solicitação POST para o subdomínio. aqui está o resultado da análise:
depoisdegoogling,descobriqueoerrow3wpéparavazamentodememóriaouquandooaplicativoestátentandoacessarumapartedamemóriaquenãopertenceàdose.EuverifiqueitodoocódigodaAPIenãohavianenhumobjetosemdisporetodooseuciclodevidaera"PerWebRequest". o que é mais eu usei o castelo Windsor para controlar o ciclo de vida de todos os objetos, até mesmo os controladores.
var container=new WindsorContainer();
container.Register(Classes.FromAssemblyContaining<VisitorRepository>().BasedOn<IRepository>()
.WithService.FromInterface().LifestylePerWebRequest());
container.Register(Classes.FromAssemblyContaining<EventService>().BasedOn<IService>()
.WithService.FromInterface().LifestylePerWebRequest());
container.Register(Component.For<EventDatabaseContext>()
.LifestylePerWebRequest()
.Forward<DbContext>());
e para controladores:
private static void RegisterControllers(IWindsorContainer container)
{
container.Register(Classes.FromAssemblyContaining<VisitorController>()
.BasedOn<ApiController>().LifestylePerWebRequest());
}
mas como teste, retornei uma string simples com qualquer código no método POST (que causa falha), mas nada mudou e depois de enviar a solicitação POST para a API da web, o pool de aplicativos parou novamente. / p>
depois de todos esses chekings, descobri que as identidades de subdomínios (no pool de aplicativos) de "api.a.com" são diferentes de outros subdomínios como "cdn.a.com" e "test.a.com ".Então eu publiquei meu código em um desses domínios e tudo estava bem.
depois de excluir e recriar a identidade "api.a.com" foi alterada, mas o pool de aplicativos de "api.a.com" parou novamente.
como mais informações, o Host instalou o Plesk e criou "a.com" e "api.a.com", e depois de obter o painel, eu criei dois outros sub-domínios: "cdn.a.com" e "test .a.com ". Mas Anfitrião diz que não é nossa culpa e é culpa dos seus códigos!
o que você acha:
Algumas ideias:
Tags iis application-pools plesk