Come utilizzare appcmd per impostare il debug = false in IIS7
Domanda
Sto cercando di usare per impostare APPCMD
debug=false
in web.config
, per la documentazione .
La sintassi specifica che sto usando è:
APPCMD SET CONFIG "SITE/VDIR" section:compilation /debug:False /commit:APP
l'uscita è
INFO ( section:compilation, timetaken:219, hresult:00000000, objects:1 )
Applied configuration changes to section "system.web/compilation" for "MACHINE/W
EBROOT/APPHOST/SITE/VDIR" at configuration commit path "MACHINE/WE
BROOT/APPHOST/SITE/VDIR"
In seguito, debug
ancora è impostato su true
.
Ho escluso il file in fase di sola lettura; Ho usato monitor di processo per guardare appcmd effettivamente scrivere al web.config nella posizione corretta. Il mio ambiente è Windows 2008 x64, SP2.
Mi rendo conto che ci sono molti modi diversi per risolvere il problema; diversi file di configurazione, facendo io stesso in XPath, Nant, ecc, ma sono specificamente interessati a motivo APPCMD
non sembra di lavorare, e per aiutare gli altri che può anche essere alle prese con lo strumento. Grazie per l'aiuto!
Soluzione
Credo che questo sia un bug o 'by design'. Dopo aver studiato questo ho notato che è possibile aggiungere e modificare altri attributi della sezione <compilation />
(io non li ho provato).
Per esempio il seguente funzionano bene:
APPCMD SET CONFIG "SITE/VDIR" section:compilation /batch:False /commit:APP
APPCMD SET CONFIG "SITE/VDIR" section:compilation /defaultLanguage:"c#" /commit:APP
Ma, come si osserva non solo è possibile modificare l'attributo debug
. Può valere la pena sollevare questo come un bug sul sito Microsoft Connect se hai questa capacità:
Ho anche spuntato una domanda sul forum di IIS:
Aggiornamento:
Questo è stato confermato come un problema da un dipendente Microsoft:
Altri suggerimenti
Catherine Shan risposta , "/ debug" è un interruttore speciale per AppCmd.exe e deve essere sfuggito come "/! debug".
Ad esempio:
APPCMD SET CONFIG "SITE/VDIR" section:compilation /!debug:False /commit:APP
Il post risposta è 21 febbraio 2013, ma mi ha aiutato oggi, meglio tardi che mai.