Aspnetcore: Problème de démarrage de l'application en cours

Créé le 25 déc. 2018  ·  3Commentaires  ·  Source: dotnet/aspnetcore

Salut!
J'essaie d'héberger une application Web à l'aide d'un modèle d'hébergement en cours. Et...
L'application ne peut pas démarrer.
Réponses IIS avec 500.30.
Les journaux de l'ANCM contiennent cela.
Si je change hostModel à OutOfProcess, tout va bien.

Mon web.config

<?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>

Journaux

```
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::OnGlobalConfigurationChange 'MACHINE/WEBROOT/APPHOST/RU-DEV-GS-GSITE.EXT.DEV.DODOIS.COM'
[aspnetcorev2.dll] Arrêt de l'application '/LM/W3SVC/340/ROOT'
[aspnetcorev2_inprocess.dll] Arrêt du thread d'observateur de fichiers
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::OnGlobalStopListening
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::Terminer
[aspnetcorev2.dll] Initialisation des journaux pour 'C:\Program Files\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll'. ID de processus : 9476. Version du fichier : 12.2.18316.0. Description : IIS ASP.NET Core Module V2. Valider : ce8cf65589734f82b0536c543aba5bd60d0a5a98.
[aspnetcorev2.dll] Résolution des paramètres hostfxr pour l'application : arguments '.\Dodo.ClientSite.exe' : '' chemin : 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\'
[aspnetcorev2.dll] Emplacement connu de dotnet.exe : ''
[aspnetcorev2.dll] Le chemin du processus '.\Dodo.ClientSite.exe' n'est pas dotnet, traitant l'application comme autonome ou portable avec le programme d'amorçage
[aspnetcorev2.dll] Vérification de l'application.dll dans 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\Dodo.ClientSite.dll'
[aspnetcorev2.dll] Vérification de hostfxr.dll à 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\hostfxr.dll'
[aspnetcorev2.dll] hostfxr.dll a trouvé l'application locale sur 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\hostfxr.dll', traitant l'application comme portable avec le lanceur
[aspnetcorev2.dll] Résolution du chemin absolu vers dotnet.exe à partir de 'dotnet'
[aspnetcorev2.dll] Appel de where.exe pour trouver dotnet.exe
[aspnetcorev2.dll] où l'invocation.exe a été renvoyée : « C:\Program Filesdotnetdotnet.exe
C:\Program Files (x86)dotnetdotnet.exe
'
[aspnetcorev2.dll] Type de bitness du processus actuel détecté comme isX64=1
[aspnetcorev2.dll] Traitement de l'entrée 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2.dll] Type binaire 6
[aspnetcorev2.dll] Trouvé dotnet.exe via l'invocation where.exe à 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2.dll] Résolution du chemin absolu vers hostfxr.dll à partir de 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2.dll] hostfxr.dll situé dans « C:\Program Filesdotnet\host\fxr\2.2.0\hostfxr.dll »
[aspnetcorev2.dll] Options hostfxr analysées : emplacement dotnet : "C:\Program Filesdotnetdotnet.exe" chemin hostfxr : "C:\Program Filesdotnet\host\fxr\2.2.0\hostfxr.dll" arguments :
[aspnetcorev2.dll] Argument[0] = 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2.dll] Argument[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 L'opération a échoué avec LastError : 32 HR : 0x80070020
[aspnetcorev2.dll] Gestionnaire de requêtes de chargement : 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\aspnetcorev2_inprocess.dll'
[aspnetcorev2.dll] Création d'une application de gestion
[aspnetcorev2_inprocess.dll] Initialisation des journaux pour 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\aspnetcorev2_inprocess.dll'. ID de processus : 9476. Version du fichier : 12.2.18316.0. Description : Gestionnaire de requêtes IIS ASP.NET Core Module V2. Valider : ce8cf65589734f82b0536c543aba5bd60d0a5a98.
[aspnetcorev2_inprocess.dll] En attente d'initialisation
[aspnetcorev2_inprocess.dll] Démarrage du thread de travail in-process
[aspnetcorev2_inprocess.dll] Résolution des paramètres hostfxr pour l'application : '.\Dodo.ClientSite.exe' arguments : '' chemin : 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\'
[aspnetcorev2_inprocess.dll] Emplacement connu de dotnet.exe : 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] Le chemin du processus '.\Dodo.ClientSite.exe' n'est pas dotnet, traitant l'application comme autonome ou portable avec le programme d'amorçage
[aspnetcorev2_inprocess.dll] Vérification de l'application.dll dans 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\Dodo.ClientSite.dll'
[aspnetcorev2_inprocess.dll] Vérification de hostfxr.dll à 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\hostfxr.dll'
[aspnetcorev2_inprocess.dll] hostfxr.dll a trouvé l'application locale à 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\hostfxr.dll', traitant l'application comme portable avec le lanceur
[aspnetcorev2_inprocess.dll] Résolution du chemin absolu vers hostfxr.dll à partir de 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] hostfxr.dll situé dans « C:\Program Filesdotnet\host\fxr\2.2.0\hostfxr.dll »
[aspnetcorev2_inprocess.dll] Options hostfxr analysées : emplacement dotnet : 'C:\Program Filesdotnetdotnet.exe' chemin hostfxr : 'C:\Program Filesdotnet\host\fxr\2.2.0\hostfxr.dll' arguments :
[aspnetcorev2_inprocess.dll] Argument[0] = 'C:\Program Filesdotnetdotnet.exe'
[aspnetcorev2_inprocess.dll] Argument[1] = 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com.\Dodo.ClientSite.dll'
[aspnetcorev2_inprocess.dll] Géré a lancé une exception -1073741819
[aspnetcorev2_inprocess.dll] Démarrage de la séquence d'arrêt 1
[aspnetcorev2_inprocess.dll] L'attente du fil Clr s'est terminée : clrThreadExited : 1
[aspnetcorev2_inprocess.dll] c:\b\w\e37dd45d8cd1eaf4\src\iisintegration\src\aspnetcoremodulev2\commonlib\fileoutputmanager. cpp:142 L'opération a échoué avec LastError : 32 HR : 0x80070020
[aspnetcorev2_inprocess.dll] Journal des événements : « Application « /LM/W3SVC/340/ROOT » avec la racine physique « E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\ » a rencontré une exception gérée inattendue , code d'exception = '0xc0000005'. Veuillez vérifier les journaux stderr pour plus d'informations.'
Message de fin du journal des événements.
[aspnetcorev2_inprocess.dll] Arrêt du thread de travail en cours
[aspnetcorev2_inprocess.dll] Arrêt du CLR
[aspnetcorev2_inprocess.dll] Journal des événements : 'Application '/LM/W3SVC/340/ROOT' avec la racine physique 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\' n'a pas réussi à charger clr et application gérée. Le thread de travail CLR s'est terminé prématurément'
Message de fin du journal des événements.
[aspnetcorev2_inprocess.dll] Exception 'InvalidOperationException' interceptée à c:\b\w\e37dd45d8cd1eaf4\src\iisintegration\src\aspnetcoremodulev2\inprocessrequesthandler\inprocessapplication. cpp : 350
[aspnetcorev2_inprocess.dll] Échec de HRESULT renvoyé : 0x8007023e à c:\b\w\e37dd45d8cd1eaf4\src\iisintegration\src\aspnetcoremodulev2\inprocessrequesthandler\dllmain. cpp : 120
[aspnetcorev2_inprocess.dll] Démarrage de la surveillance app_offline dans l'application 'E:\sites\ru-dev-gs-gsite.ext.dev.dodois.com\'
[aspnetcorev2_inprocess.dll] Démarrage du fil d'observation des fichiers
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::OnGlobalConfigurationChange 'MACHINE/WEBROOT/APPHOST/RU-DEV-GS-GSITE.EXT.DEV.DODOIS.COM'
[aspnetcorev2.dll] Arrêt de l'application '/LM/W3SVC/340/ROOT'
[aspnetcorev2_inprocess.dll] Arrêt du thread d'observateur de fichiers
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::OnGlobalStopListening
[aspnetcorev2.dll] ASPNET_CORE_GLOBAL_MODULE::Terminer
````

area-servers servers-iis

Commentaire le plus utile

Votre Program.Main lève une exception. C'est probablement dû au problème CurrentDirectory : #4206. Voici notre solution de contournement recommandée pour le moment : https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/aspnet-core-module/samples_snapshot/2.x/CurrentDirectoryHelpers.cs. Cela sera corrigé dans un patch.

J'ai des problèmes à appliquer le correctif suggéré et à résoudre le problème que je ne sais pas s'il doit être résolu dans la version actuelle de .Net Core 2.2 car j'obtiens toujours la même erreur - réponses IIS avec 500.30 - lors de l'exécution d'InProcess. En activant les journaux, je pouvais voir que le problème était lié au même problème, car le répertoire renvoyé n'est pas le bon répertoire. Au lieu de cela, il a renvoyé le chemin à partir duquel le service IIS s'exécute dans le système. Pour appliquer le correctif, j'ai copié CurrentDirectoryHelper.cs dans mon projet et l'appelle à partir de Program.cs avant de définir 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}");
L'application du correctif en tant que tel produit toujours le même résultat.
L'application démarre correctement si elle s'exécute en tant qu'OutOfProcess et si elle s'exécute sous IIS Express

Quelqu'un peut-il m'aider avec ça sil-vous-plait?

Tous les 3 commentaires

Votre Program.Main lève une exception. C'est probablement dû au problème CurrentDirectory : #4206. Voici notre solution de contournement recommandée pour le moment : https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/aspnet-core-module/samples_snapshot/2.x/CurrentDirectoryHelpers.cs. Cela sera corrigé dans un patch.

Je suppose que la solution de contournement a résolu votre problème. N'hésitez pas à rouvrir autrement.

Votre Program.Main lève une exception. C'est probablement dû au problème CurrentDirectory : #4206. Voici notre solution de contournement recommandée pour le moment : https://github.com/aspnet/Docs/blob/master/aspnetcore/host-and-deploy/aspnet-core-module/samples_snapshot/2.x/CurrentDirectoryHelpers.cs. Cela sera corrigé dans un patch.

J'ai des problèmes à appliquer le correctif suggéré et à résoudre le problème que je ne sais pas s'il doit être résolu dans la version actuelle de .Net Core 2.2 car j'obtiens toujours la même erreur - réponses IIS avec 500.30 - lors de l'exécution d'InProcess. En activant les journaux, je pouvais voir que le problème était lié au même problème, car le répertoire renvoyé n'est pas le bon répertoire. Au lieu de cela, il a renvoyé le chemin à partir duquel le service IIS s'exécute dans le système. Pour appliquer le correctif, j'ai copié CurrentDirectoryHelper.cs dans mon projet et l'appelle à partir de Program.cs avant de définir 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}");
L'application du correctif en tant que tel produit toujours le même résultat.
L'application démarre correctement si elle s'exécute en tant qu'OutOfProcess et si elle s'exécute sous IIS Express

Quelqu'un peut-il m'aider avec ça sil-vous-plait?

Cette page vous a été utile?
0 / 5 - 0 notes