Dove si trova il file di configurazione / metabase di IIS Express?


315

Dove è possibile trovare il file di configurazione / metabase di IIS Express?

Risposte:


548

Il file di configurazione si chiama applicationhost.config . È memorizzato qui:

I miei documenti> IIS Express> config

di solito, ma non sempre, uno di questi percorsi funzionerà

%userprofile%\documents\iisexpress\config\applicationhost.config
%userprofile%\my documents\iisexpress\config\applicationhost.config

Aggiornamento per VS2019
Se stai usando Visual Studio 2019+ controlla questo percorso:

$(solutionDir)\.vs\{projectName}\config\applicationhost.config

Aggiornamento per VS2015 (credito: @Talon)
Se si utilizza Visual Studio 2015-2017, controllare questo percorso:

$(solutionDir)\.vs\config\applicationhost.config

In Visual Studio 2015+ è inoltre possibile configurare il file applicationhost.config utilizzato modificando l' <UseGlobalApplicationHostFile>true|false</UseGlobalApplicationHostFile>impostazione nel file di progetto (ad esempio: MyProject.csproj). (fonte: forum MSDN )


4
I progetti VS2015 possono anche utilizzare il file di configurazione globale. C'è un'impostazione di progetto che lo controlla, che potresti aggiungere.
Lex Li,

5
Mi salvi la giornata. Ho introdotto alcuni ASP.NET 5 (vNext) su sln, quindi il progetto Web ASP.NET 4.5 non verrà eseguito ma si lamenterà del processo non eseguito. Dopo aver rimosso la cartella .vs insieme a $ (solutionDir) \. Vs \ config \ applicationhost.config, le cose funzionano di nuovo. :)
ZZZ,

1
Per riferimento, il comando per avviare IIS Express, come da documentazione ):, > iisexpress /config:config-file /site:site-namedove config-fileè un percorso completo per applicationhost.config. Vedi anche la risposta di @CosCallis sul modo più semplice per ottenere questo percorso. site-namedovrebbe corrispondere a uno dei nomi nella <sites>sezione di applicationhost.config.
Alex Fainshtein,

Se desideri disabilitare i log durante lo sviluppo, trova il nodo e imposta / aggiungi abilitato su false<siteDefaults> <logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" enabled="false"/> <traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="false" maxLogFileSizeKB="1024" /> </siteDefaults>
Gutek,

Grazie per aver segnalato l'aggiornamento a VS2019. Stava migrando e mi chiedevo perché il mio file di configurazione non modificasse il comportamento di IIS Express.
Grimm,

95

Dall'introduzione di Visual Studio 2015, questa posizione è cambiata e viene aggiunta alla radice della soluzione nella seguente posizione:

C:\<Path\To\Solution>\.vs\config\applicationhost.config

Spero che questo ti faccia risparmiare un po 'di tempo!


1
Dopo aver realizzato ciò, sembra che la configurazione nella cartella Documenti sia effettivamente utilizzata come modello utilizzato quando si configura un nuovo progetto e lo si esegue in IIS Express. Devi ancora mantenere quello originale dove abita per quanto posso dire, ma se vuoi modificare la posizione dei registri per tutti i nuovi progetti puoi aggiornare questo file per spostarli altrove
Dan Harris,

90

Per VS 2015 e VS 2017 : fare clic con il tasto destro sull'icona della barra delle applicazioni di IIS Express (quando si esegue l'applicazione) e selezionare "Mostra tutte le applicazioni":

Menu contestuale per l'icona della barra delle applicazioni di IIS Express che mostra l'alternativa "Mostra tutte le applicazioni" evidenziata

Quindi, selezionare l'applicazione pertinente e fare clic sul percorso del file applicationhost.config:

Finestra di dialogo che mostra il sito Web di Arbritrary con il relativo percorso del file applicationhost.config


3
Poiché questa è la risposta che ti porterà definitivamente sulla strada giusta ogni volta, questa dovrebbe essere la risposta accettata.
Lewis Cianci,

@ cos-callis Per quanto riguarda la modifica, il comportamento della barra delle applicazioni di IIS Express dipende davvero da Visual Studio?

@ BjörnAliGöransson Non avendo un sistema VS 2013 attivo e funzionante, non posso tornare indietro e controllare prontamente, ma "so" che funziona su VS 2015/17 e "so" che prima del 2015 la posizione dei dati di configurazione era diverso. Tanto più che altro sono spesso frustrato da domande e risposte che compaiono in una ricerca in cui la risposta "accettata" è antica e obsoleta, quindi ho ritenuto opportuno aggiungere che "ad oggi" la tua risposta è "valida per il 2015/17 '... nessuna promessa per quanto sarà vero in VS 2019 +++ :)
Cos Callis,

Ottengo il tuo punto 👍 ma penso che IIS express sia stato rilasciato con / contemporaneamente a VS 2012, prima che esistesse solo Cassini - IIRC ???

Dai un'occhiata a questo pezzo di storia, dal 2011: abhijitjana.net/2011/08/05/… "Visual Studio 2010 SP1 fornisce una completa integrazione con IIS Express"

52

Per tornare al punto di partenza e includere tutte le versioni di Visual Studio, @Myster inizialmente dichiarato che;

In Visual Studio 2015 i percorsi di applicationhost.config erano:

%userprofile%\documents\iisexpress\config\applicationhost.config
%userprofile%\my documents\iisexpress\config\applicationhost.config

Il percorso di Visual Studio 2015/2017 è disponibile all'indirizzo: ( credito: @Talon )

$(solutionDir)\.vs\config\applicationhost.config

Il percorso di Visual Studio 2019 è disponibile all'indirizzo: ( credito: @Talon )

$(solutionDir)\.vs\config\$(ProjectName)\applicationhost.config

Ma la parte che potrebbe ottenere alcune persone è che le impostazioni del progetto nel file .sln possono ripopolare applicationhost.config per Visual Studio 2015+ . ( credito: @Lex Li )

Quindi, se apporti una modifica in applicationhost.config, devi anche assicurarti che le modifiche corrispondano qui:

$(solutionDir)\ProjectName.sln

Le due impostazioni importanti dovrebbero apparire come:

Project("{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}") = "ProjectName", "ProjectPath\", "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"

e

VWDPort = "Port#"

Ciò che è importante qui è che le due impostazioni in .sln devono corrispondere rispettivamente al nome e bindingInformation nel file applicationhost.config se si prevede di apportare modifiche. Potrebbero esserci più posti che collegano questi due file e aggiornerò man mano che trovo più collegamenti tramite commenti o più esperienza.


2

Per Visual Studio 2019 (v16.2.4) sono stato in grado di trovare questo file solo qui:

C: \ Users \\ Documents \ IISExpress \ config \ applicationhost.config applicationhost.config

Spero che questo aiuti, dato che non sono riuscito a trovare il percorso della cartella .vs come menzionato nei suggerimenti sopra.


Ciò equivale al primo suggerimento di %userprofile%\documents\iisexpress\config\applicationhost.config. Anche se, se corri via Visual Studio, mi aspetto che usi quello nella directory .vs.
Myster,

0

Penso che tutte le risposte qui siano rilevanti tuttavia se, come me, stai cercando da dove Visual Studio prende il modello da quando crea un nuovo versione di applicationHost.config , puoi guardare qui:

C:\Program Files (x86)\IIS Express\config\templates\PersonalWebServer

Questo succede molto se lavori spesso su più rami dello stesso progetto e premi "debug" in molti di essi. Effettuare una modifica qui assicurerà che la modifica si propaga a qualsiasi nuova cartella progetto / soluzione creata.

La risposta proviene indirettamente da questa risposta

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.