Condividi tramite


Snap-in di PowerShell: Spostamento nello spazio dei nomi snap-in IIS

di Thomas Deml

Tutti hanno familiarità con la modalità di organizzazione del file system. I file system sono spazi dei nomi gerarchici, costituiti da directory che contengono file e altre directory. Lo snap-in di PowerShell sfrutta questa familarità con il file system e consente l'esposizione di altri archivi dati come spazio dei nomi gerarchico. Come la radice di un'unità del file system è in genere C:\ la radice del sistema di configurazione IIS è "IIS:".

Sotto l'unità radice "IIS:" sono disponibili "Siti" e pool di applicazioni - "AppPools" in breve.

Organizzazione dello spazio dei nomi snap-in IIS

Ecco la struttura dello spazio dei nomi snap-in di IIS PowerShell. I contenitori seguenti non possono essere eliminati o spostati.

  • IIS:\

    • Siti

      • Raccolta siti

        • Applicazioni e directory virtuali
    • Apppools

      • WorkerProcesses
    • SslBindings

Nota: se i processi di lavoro vengono avviati, gli oggetti Processo di PowerShell sono disponibili nell'insieme Processo di lavoro. Questa raccolta process è aumentata con oggetti Request e AppDomain. In questo modo è possibile eseguire query sui processi di lavoro IIS per l'esecuzione delle richieste e l'esecuzione di domini applicazione.

Ora proviamolo.

Attività 1 - Acquisire familiarità con lo spazio dei nomi del provider IIS

1.1. Avviare la Console di gestione di IIS PowerShell

Fare clic sul menu Start: selezionare "Tutti i programmi" - "Iis 7.0 Extensions" - "IIS PowerShell Management Console". Il prompt della nuova finestra di comando di PowerShell è impostato su "IIS:" - la radice dello spazio dei nomi del provider IIS.

1.2. Spostarsi nello spazio dei nomi

Digitare "dir" e notare che Sites e AppPools sono le uniche due directory sotto la radice.

PS IIS:\> dir
Name
----
Sites
AppPools

Come passaggio successivo si vuole passare alla directory Siti. È possibile eseguire questa operazione con i comandi seguenti:

PS IIS:\> cd Sites
PS IIS:\Sites> dir
Name             ID   State      Physical Path                  Bindings
----             --   -----      -------------                  --------
Default Web Site 1    Started    f:\inetpub\wwwroot             http *:80:

Se si è avventurosi, si noterà che la digitazione della scheda> CD Si<darà il completamento della riga di comando.

Provare a eseguire questa operazione:

1.2 Altri spostamenti

Provare a eseguire le operazioni seguenti:

PS IIS:\Sites> Get-Item 'Default Web Site' | Select-Object *

PSPath                     : IIsProviderSnapIn\WebAdministration::\\THDLAP\Sites\Default Web Site
PSParentPath               : IIsProviderSnapIn\WebAdministration::\\THDLAP\Sites
PSChildName                : Default Web Site
PSDrive                    : IIS
PSProvider                 : IIsProviderSnapIn\WebAdministration
PSIsContainer              : True
State                      : Started
name                       : Default Web Site
id                         : 1
serverAutoStart            : True
bindings                   : {binding, binding}
limits                     : Microsoft.Web.Administration.ConfigurationElement
logFile                    : Microsoft.Web.Administration.ConfigurationElement
traceFailedRequestsLogging : Microsoft.Web.Administration.ConfigurationElement
applicationDefaults        : Microsoft.Web.Administration.ConfigurationElement
virtualDirectoryDefaults   : Microsoft.Web.Administration.ConfigurationElement
applicationPool            : DefaultAppPool
enabledProtocols           : http
userName                   :
password                   :
physicalPath               : f:\inetpub\wwwroot
Attributes                 : {name, id, serverAutoStart, state}
ChildElements              : {bindings, limits, logFile, traceFailedRequestsLogging...}
ElementTagName             : site
IsLocallyStored            : True
Methods                    : {Start, Stop}
RawAttributes              : {name, id, serverAutoStart, state}
Schema                     : Microsoft.Web.Administration.ConfigurationElementSchema

La prima volta che si sta provando un cmdlet di PowerShell invece di usare i comandi DOS precedenti, ad esempio CD o DIR. Se si vuole usare in modo efficace lo snap-in DI POWERShell di IIS, è consigliabile acquisire familiarità con questi comandi.

Get-Item, ad esempio, è un comando che consente di ottenere informazioni dettagliate sull'elemento nella posizione specificata. In questo caso si ottengono i dettagli per il "Sito Web predefinito" (se si desidera salvare alcuni tipi di digitazione prova 'get-item D<tab>' e la riga di comando verrà completata automaticamente da PowerShell). Viene inviato tramite pipe l'output di Get-Item al cmdlet Select-Object e vengono visualizzate tutte le impostazioni di configurazione del sito Web predefinito.

Riepilogo

Questa procedura dettagliata ha illustrato rapidamente come è organizzato lo snap-in IIS. Si è anche appreso un comando di base per trovare il modo in cui si trova nello spazio dei nomi IIS.