Olá!
Estou tentando hospedar um aplicativo da web usando o modelo de hospedagem em processo. E...
O aplicativo não pode ser iniciado.
Respostas IIS com 500,30.
Os logs ANCM contêm isso.
Se eu alternar hostingModel para OutOfProcess - tudo está ok.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath=".\Dodo.ClientSite.exe" arguments="" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" hostingModel="InProcess">
<handlerSettings>
<handlerSetting name="debugFile" value=".\aspnetcore-debug.log" />
<handlerSetting name="debugLevel" value="FILE,TRACE" />
</handlerSettings>
</aspNetCore>
</system.webServer>
</configuration>
`` `
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: OnGlobalConfigurationChange 'MACHINE / WEBROOT / APPHOST / RU-DEV-GS-GSITE.EXT.DEV.DODOIS.COM'
[aspnetcorev2.dll] Interrompendo o aplicativo '/ LM / W3SVC / 340 / ROOT'
[aspnetcorev2_inprocess.dll] Interrompendo o thread do inspetor de arquivos
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: OnGlobalStopListening
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: Terminate
[aspnetcorev2.dll] Inicializando logs para 'C: \ Arquivos de programas \ IIS \ Asp.Net Core Module \ V2 \ aspnetcorev2.dll'. Id do processo: 9476 .. Versão do arquivo: 12.2.18316.0. Descrição: Módulo IIS ASP.NET Core V2. Confirmar: ce8cf65589734f82b0536c543aba5bd60d0a5a98.
[aspnetcorev2.dll] Resolvendo parâmetros hostfxr para o aplicativo: '. \ Dodo.ClientSite.exe' argumentos: '' caminho: 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \'
[aspnetcorev2.dll] Localização conhecida do dotnet.exe: ''
[aspnetcorev2.dll] O caminho do processo '. \ Dodo.ClientSite.exe' não é dotnet, tratando o aplicativo como independente ou portátil com bootstrapper
[aspnetcorev2.dll] Verificando application.dll em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ Dodo.ClientSite.dll'
[aspnetcorev2.dll] Verificando hostfxr.dll em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ hostfxr.dll'
[aspnetcorev2.dll] hostfxr.dll encontrou o aplicativo local em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ hostfxr.dll', tratando o aplicativo como portátil com iniciador
[aspnetcorev2.dll] Resolvendo caminho absoluto para dotnet.exe a partir de 'dotnet'
[aspnetcorev2.dll] Invocando where.exe para localizar dotnet.exe
[aspnetcorev2.dll] onde a invocação de.exe retornou: 'C: \ Program Filesdotnetdotnet.exe
C: \ Arquivos de programas (x86) dotnetdotnet.exe
'
[aspnetcorev2.dll] Tipo de bitness do processo atual detectado como isX64 = 1
[aspnetcorev2.dll] Processando entrada 'C: \ Program Filesdotnetdotnet.exe'
[aspnetcorev2.dll] Tipo binário 6
[aspnetcorev2.dll] Encontrado dotnet.exe por meio da invocação where.exe em 'C: \ Arquivos de programasdotnetdotnet.exe'
[aspnetcorev2.dll] Resolvendo o caminho absoluto para hostfxr.dll de 'C: \ Arquivos de programasdotnetdotnet.exe'
[aspnetcorev2.dll] hostfxr.dll localizado em 'C: \ Arquivos de programasdotnet \ host \ fxr \ 2.2.0 \ hostfxr.dll'
[aspnetcorev2.dll] Opções de hostfxr analisadas: localização dotnet: 'C: \ Arquivos de programasdotnetdotnet.exe' caminho de hostfxr: 'C: \ Arquivos de programasdotnet \ host \ fxr \ 2.2.0 \ hostfxr.dll' argumentos:
[aspnetcorev2.dll] Argumento [0] = 'C: \ Arquivos de programasdotnetdotnet.exe'
[aspnetcorev2.dll] Argumento [1] = 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ Dodo.ClientSite.dll'
[aspnetcorev2.dll] c: \ b \ w \ e37dd45d8cd1eaf4 \ src \ iisintegration \ src \ aspnetcoremodulev2 \ commonlib \ fileoutputmanager. cpp: 142 Falha na operação com LastError: 32 HR: 0x80070020
[aspnetcorev2.dll] Carregando manipulador de solicitação: 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \ aspnetcorev2_inprocess.dll'
[aspnetcorev2.dll] Criando aplicativo manipulador
[aspnetcorev2_inprocess.dll] Inicializando logs para 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \ aspnetcorev2_inprocess.dll'. Id do processo: 9476 .. Versão do arquivo: 12.2.18316.0. Descrição: manipulador de solicitações do IIS ASP.NET Core Module V2. Confirmar: ce8cf65589734f82b0536c543aba5bd60d0a5a98.
[aspnetcorev2_inprocess.dll] Aguardando inicialização
[aspnetcorev2_inprocess.dll] Iniciando thread de trabalho em processo
[aspnetcorev2_inprocess.dll] Resolvendo parâmetros hostfxr para o aplicativo: '. \ Dodo.ClientSite.exe' argumentos: '' caminho: 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \'
[aspnetcorev2_inprocess.dll] Local conhecido do dotnet.exe: 'C: \ Program Filesdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] O caminho do processo '. \ Dodo.ClientSite.exe' não é dotnet, tratando o aplicativo como independente ou portátil com bootstrapper
[aspnetcorev2_inprocess.dll] Verificando application.dll em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ Dodo.ClientSite.dll'
[aspnetcorev2_inprocess.dll] Verificando hostfxr.dll em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ hostfxr.dll'
[aspnetcorev2_inprocess.dll] hostfxr.dll encontrou o aplicativo local em 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ hostfxr.dll', tratando o aplicativo como portátil com iniciador
[aspnetcorev2_inprocess.dll] Resolvendo o caminho absoluto para hostfxr.dll de 'C: \ Program Filesdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] hostfxr.dll localizado em 'C: \ Arquivos de programasdotnet \ host \ fxr \ 2.2.0 \ hostfxr.dll'
[aspnetcorev2_inprocess.dll] Opções de hostfxr analisadas: localização dotnet: 'C: \ Arquivos de programasdotnetdotnet.exe' caminho de hostfxr: 'C: \ Arquivos de programasdotnet \ host \ fxr \ 2.2.0 \ hostfxr.dll' argumentos:
[aspnetcorev2_inprocess.dll] Argumento [0] = 'C: \ Arquivos de programasdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] Argumento [1] = 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com. \ Dodo.ClientSite.dll'
[aspnetcorev2_inprocess.dll] Gerenciado lançou uma exceção -1073741819
[aspnetcorev2_inprocess.dll] Iniciando a sequência de desligamento 1
[aspnetcorev2_inprocess.dll] A espera do thread Clr terminou: clrThreadExited: 1
[aspnetcorev2_inprocess.dll] c: \ b \ w \ e37dd45d8cd1eaf4 \ src \ iisintegration \ src \ aspnetcoremodulev2 \ commonlib \ fileoutputmanager. cpp: 142 Falha na operação com LastError: 32 HR: 0x80070020
[aspnetcorev2_inprocess.dll] Log de eventos: 'Application' / LM / W3SVC / 340 / ROOT 'com raiz física' E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \ 'atingiu exceção gerenciada inesperada , código de exceção = '0xc0000005'. Por favor, verifique os logs stderr para mais informações. '
Mensagem de registro de evento final.
[aspnetcorev2_inprocess.dll] Interrompendo o thread de trabalho em processo
[aspnetcorev2_inprocess.dll] Parando CLR
[aspnetcorev2_inprocess.dll] Log de eventos: 'Application' / LM / W3SVC / 340 / ROOT 'com raiz física' E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \ 'falhou ao carregar clr e aplicativo gerenciado. O thread de trabalho CLR saiu prematuramente '
Mensagem de registro de evento final.
[aspnetcorev2_inprocess.dll] Exceção 'InvalidOperationException' capturada em c: \ b \ w \ e37dd45d8cd1eaf4 \ src \ iisintegration \ src \ aspnetcoremodulev2 \ inprocessrequesthandler \ inprocessapplication. cpp: 350
[aspnetcorev2_inprocess.dll] Falha no HRESULT retornado: 0x8007023e em c: \ b \ w \ e37dd45d8cd1eaf4 \ src \ iisintegration \ src \ aspnetcoremodulev2 \ inprocessrequesthandler \ dllmain. cpp: 120
[aspnetcorev2_inprocess.dll] Iniciando o monitoramento app_offline no aplicativo 'E: \ sites \ ru-dev-gs-gsite.ext.dev.dodois.com \'
[aspnetcorev2_inprocess.dll] Iniciando o thread do inspetor de arquivos
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: OnGlobalConfigurationChange 'MACHINE / WEBROOT / APPHOST / RU-DEV-GS-GSITE.EXT.DEV.DODOIS.COM'
[aspnetcorev2.dll] Interrompendo o aplicativo '/ LM / W3SVC / 340 / ROOT'
[aspnetcorev2_inprocess.dll] Interrompendo o thread do inspetor de arquivos
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: OnGlobalStopListening
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE :: Terminate
`` ``
Seu Program.Main está lançando uma exceção. Provavelmente é devido ao problema CurrentDirectory: # 4206. Aqui está nossa solução alternativa recomendada por enquanto: https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/aspnet-core-module/samples_snapshot/2.x/CurrentDirectoryHelpers.cs. Isso será corrigido em um patch.
Presumo que a solução alternativa tenha resolvido o seu problema. Sinta-se à vontade para reabrir caso contrário.
Seu Program.Main está lançando uma exceção. Provavelmente é devido ao problema CurrentDirectory: # 4206. Aqui está nossa solução alternativa recomendada por enquanto: https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/aspnet-core-module/samples_snapshot/2.x/CurrentDirectoryHelpers.cs. Isso será corrigido em um patch.
Estou tendo problemas para aplicar a correção sugerida e resolver o problema que não sei se deve ser corrigido na versão atual .Net Core 2.2, pois ainda estou recebendo o mesmo erro - respostas do IIS com 500.30 - ao executar o InProcess. Habilitando os logs, pude ver que o problema está relacionado ao mesmo problema, pois o diretório retornado não é o diretório correto. Em vez disso, ele retornou o caminho de onde o serviço IIS é executado no sistema. Para aplicar a correção, copiei CurrentDirectoryHelper.cs para o meu projeto e chamei-o de Program.cs antes de definir o SetBasePath,
logger.LogWarning($"Applying Patch to fix Current Directory issue. Current Directory: {Environment.CurrentDirectory}");
//TODO: the line below can be removed when the bug with InProcess method is fixed (more details, follow the class definition and read the comments)
CurrentDirectoryHelpers.SetCurrentDirectory();
logger.LogWarning($"Fix applied. Current Directory now is: {Environment.CurrentDirectory}");
Aplicar a correção como tal ainda produz o mesmo resultado.
O aplicativo começa bem se for executado como OutOfProcess e se for executado no IIS Express
Alguém pode me ajudar com isso por favor?
Comentários muito úteis
Estou tendo problemas para aplicar a correção sugerida e resolver o problema que não sei se deve ser corrigido na versão atual .Net Core 2.2, pois ainda estou recebendo o mesmo erro - respostas do IIS com 500.30 - ao executar o InProcess. Habilitando os logs, pude ver que o problema está relacionado ao mesmo problema, pois o diretório retornado não é o diretório correto. Em vez disso, ele retornou o caminho de onde o serviço IIS é executado no sistema. Para aplicar a correção, copiei CurrentDirectoryHelper.cs para o meu projeto e chamei-o de Program.cs antes de definir o SetBasePath,
logger.LogWarning($"Applying Patch to fix Current Directory issue. Current Directory: {Environment.CurrentDirectory}"); //TODO: the line below can be removed when the bug with InProcess method is fixed (more details, follow the class definition and read the comments) CurrentDirectoryHelpers.SetCurrentDirectory(); logger.LogWarning($"Fix applied. Current Directory now is: {Environment.CurrentDirectory}");
Aplicar a correção como tal ainda produz o mesmo resultado.
O aplicativo começa bem se for executado como OutOfProcess e se for executado no IIS Express
Alguém pode me ajudar com isso por favor?