2015-12-08 24 views
8

Dopo un aggiornamento da ASP.NET 5 beta 7 a RC1, un tentativo di avviare l'applicazione Web in IIS Express da Visual Studio termina con "Si è verificato un errore durante il tentativo di determinare l'id di processo del processo DNX che ospita la tua applicazione ".IIS Express + HttpPlatformHandler arresto anomalo all'avvio dell'applicazione RC1 ASP.NET 5

Nel registro eventi di Windows posso vedere seguenti errori:

  • processo '1828' riuscito ad avviare. Porta = 31115, Codice errore = '-2147024891'. (EventID 1000; ciò accade sempre)
  • Avviso: impossibile creare stdoutLogFile \? \ C: _temp_httpplatform-stdout.log_6072_2015128124832.log, ErrorCode = -2147024864. (EventID 1004; questo accade solo a volte)

file di log, come configurato nella HttpPlatformHandler Configuration fatevi creato, ma sono completamente vuoti, così come finestra di output VS.

Come posso diagnosticare il motivo dell'errore?

versioni rilevanti sono:

  • di Visual Studio Enterprise 2015 Update 1
  • DNX SDK versione: 1.0.0-rc1-update1
  • Windows 7 Enterprise SP1 (64-bit)

sezioni pertinenti da web.config:

<system.webServer> 
    <handlers> 
    <add name="httpPlatformHandler" path="*" verb="*" modules="httpPlatformHandler" resourceType="Unspecified" /> 
    </handlers> 
    <httpPlatform processPath="%DNX_PATH%" 
       arguments="%DNX_ARGS%" 
       stdoutLogEnabled="true" 
       stdoutLogFile="C:\_temp\_httpplatform-stdout.log" 
       startupTimeLimit="3600" 
       forwardWindowsAuthToken="false" /> 
</system.webServer> 

Ciò che forse è anche interessante è che inizialmente quando ho provato a eseguire una nuovissima applicazione Web ASP.NET 5 creata dal modello, ha funzionato. Ora non lo fa neanche.

UPDATE: Nonostante l'errore IIS Express viene avviato, ma restituisce l'errore 502.3 Bad Gateway

+1

Provare a impostare stdoutLogFile su 'c: \ temp \' – Tratcher

+1

Probabilmente qualcos'altro è in esecuzione su questa porta. Esegui 'netstat -a -n -o' - questo mostrerà le porte in uso e il PID del processo usando la porta. Trova la tua porta e poi usa PID per capire quale processo è. Oppure prova una porta diversa ... – Pawel

+0

Assicurati che "C: \ _ temp \" esista –

risposta

1

Così, un collega ha avuto un problema simile.

Ho finito per controllare il file .vs \ config \ applicationhost.config sotto il progetto. La sua risulta avere una cattiva area <> siti. Due dei siti erano vincolanti https a "*: 44300: localhost". Ne ho rimosso uno (quello che vincolava anche l'http all'indirizzo 80), rinumerò i siti e ora funziona il suo IIS Express.

+0

Beh, ho trovato 4 siti lì - uno era un certo WebSite1 e poi 3 siti per il mio progetto (con porte diverse). Ho pulito quello, in modo che ci sia solo una voce con id = 1 e vincolante per http e "*: 1477: localhost", tuttavia il comportamento rimane lo stesso ... – metalheart

+0

Bene, il mio buono ha finito per avere 2 siti: WebSite1 e il mio progetto. Mi chiedo se hai rimosso troppo. – JonTheMon

+0

Inoltre, l'unico sito che ha funzionato correttamente è stato wwwroot – JonTheMon

1

Ho appena risolto questo problema per i miei siti ("Si è verificato un errore nel tentativo di determinare l'id di processo del processo DNX che ospita l'applicazione") - stessa barca, aggiornamento da Beta 7 a RC1. Credo che questi progetti siano stati originariamente creati in Beta 4 o 5.

Si scopre che nel mio web.config ci sono stati ulteriori problemi con le versioni precedenti della beta di ASP.Net, e questi stavano facendo saltare la richiesta.

ho rimosso questi:

<remove name="ExtensionlessUrlHandler-Integrated-4.0" /> 
    <remove name="OPTIONSVerbHandler" /> 
    <remove name="TRACEVerbHandler" /> 
    <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /> 

E i siti si mise a correre in modo appropriato in IIS Express. Se questo non funziona, potresti provare a creare un nuovo progetto e vedere se funziona correttamente: confronta i file web.config, startup e project.json per vedere se ci sono altre modifiche che devi apportare.

+1

In realtà, il mio unico gestore nella sezione 'system.webServer' è' httpPlatformHandler' ... quindi nessuna gioia con questa soluzione ... – metalheart

0

Ho affrontato lo stesso problema quando ho avviato il progetto tramite IIS Express. Ho ottenuto "Si è verificato un errore nel tentativo di determinare l'ID di processo del processo DNX che ospita l'applicazione". Ho provato a riparare VS, reinstallare IIS ma non ha funzionato. E il giorno dopo ho trovato la soluzione su asp toling known issues. Basta reinstallare ASP.NET 5 RC1.

0

Ho lo stesso problema.

Nel file project.json. Il mio codice era

"version": "1.0.0-rc1-update", 

lo cambio a

"version": "1.0.0-rc1-update1", 

Perché nel launchSettings.json file di ho "sdkVersion": "dnx-clr-win-x64.1.0.0-rc1-update1".

Deve corrispondere alla versione di sdk nel file launchSettings.json.

Problemi correlati