Getting Started with the IIS Manager in IIS (Introduzione a Gestione IIS in IIS)
di IIS Team, Tobin Titus
Compatibilità
Versione | Note |
---|---|
IIS 7.0 e versioni successive | Le funzionalità descritte in questo articolo sono state introdotte in IIS 7.0. |
IIS 6.0 e versioni precedenti | Le funzionalità descritte in questo articolo non sono supportate prima di IIS 7.0. |
Introduzione
IIS 7.0 e versioni successive hanno una nuova interfaccia utente delle versioni precedenti di IIS: Gestione IIS. Questo articolo descrive l'aspetto, la delega delle funzionalità, l'interazione con la configurazione e la comunicazione remota. Si noti che alcune versioni di IIS potrebbero non avere alcune funzionalità o funzionalità descritte in questo documento.
Perché ha dovuto cambiare? Ecco alcuni motivi principali:
- IIS e ASP.NET interagiscono: gli utenti di IIS 6.0 fare clic con il pulsante destro del mouse su un sito Web, selezionare "Tutte le proprietà" e ottenere una finestra di dialogo con una serie di schede per impostazioni diverse. Con IIS 7.0 e versioni successive, Gestione IIS doveva mostrare la configurazione per le nuove funzionalità, ad esempio memorizzazione nella cache dell'output, traccia delle richieste non riuscite e filtro richieste, nonché la configurazione per ASP.NET e parti pertinenti di .NET Framework. La nuova funzionalità avrebbe richiesto molte altre nuove schede, un'opzione inaccettabile.
- Amministrazione delegata: lo spostamento della configurazione dalla metabase al sistema di configurazione .NET significa che gli utenti possono, se consentito, impostare la configurazione IIS nei file web.config. Ad esempio, la configurazione per un'applicazione
http://www.contoso.com/sales
può essere scritta nel file di configurazione radice applicationHost.config, nel file web.config del sitohttp://www.contoso.com/
o direttamente nel file web.config dell'applicazione. La nuova gestione IIS deve: 1) consentire a un amministratore di controllare la configurazione consentita nei file web.config, 2) mostrare l'amministratore/utente in cui viene scritta la configurazione. Gestione IIS meno recente non era in grado di risolvere questi problemi. - Motivi tecnici: il software ha una durata di conservazione. Il tempo porta nuove tecnologie, nuovi requisiti, nuove convenzioni, e c'è un punto in cui l'aggiornamento del software esistente diventa più intensivo del lavoro e costoso che ricompila il software. Gestione IIS stava raggiungendo la fine della durata di conservazione.
Qualcos'altro da sapere? Dopo aver deciso di riscrivere Gestione IIS, abbiamo avuto l'opportunità di migliorare in diversi modi chiave:
- Estendibilità: l'estensione della versione IIS 6.0 di Gestione IIS era proibitivamente difficile. La nuova gestione IIS semplifica notevolmente l'aggiunta di pagine di funzionalità, nodi treeview e voci di menu; tutto usando codice gestito e WinForms. Le nuove estensioni di Gestione IIS vengono rilevate e scaricate automaticamente dai client di Gestione IIS remoti che si connettono al server.
- Amministrazione remota: l'amministrazione remota viene eseguita su HTTPS, semplificando la gestione del firewall. Il servizio gestione Web (WMSVC) è il componente facoltativamente installabile che abilita l'amministrazione remota.
- Nuovo aspetto: Gestione IIS necessita di un modello più scalabile per l'esposizione delle impostazioni e la visualizzazione elenco delle funzionalità risultante è simile alla Pannello di controllo. È possibile ordinare, raggruppare e visualizzare una visualizzazione elenco in modi diversi, semplificando così la ricerca di ciò che si sta cercando. Lo spostamento di Gestione IIS ha anche acquisito un aspetto più simile al browser con una barra degli indirizzi di Esplora risorse.
Nota
Questo documento è stato scritto per Windows Server 2008. Windows Vista® potrebbe non avere alcune funzionalità o funzionalità descritte in questo documento.
Nuovo look e aspetto
Gestione Internet Information Services (IIS) ha avuto lo spostamento di tipo Indietro/Avanti nelle versioni precedenti e il nuovo Gestione IIS lo fa ancora più lontano aggiungendo una barra degli indirizzi che funziona come Esplora risorse.
Figura 1: Nuova gestione IIS
Pagina iniziale
La home page diventerà molto familiare non appena si inizia a usare Gestione IIS. L'elenco di funzionalità al centro può essere ordinato in base al nome o alla descrizione della funzionalità, raggruppati per area o categoria e visualizzati in layout diversi.
Figura 2: Raggruppamento in Gestione IIS
Ambiti di funzionalità
I nodi server, sito, applicazione, directory virtuale e cartella nella visualizzazione albero mostrano tutti una home page con un elenco di funzionalità. La maggior parte delle funzionalità viene visualizzata nelle home page per tutti questi nodi, ma esistono eccezioni.
Queste funzionalità vengono visualizzate solo nella home page del server perché sono informazioni, dati o configurazione a livello di server:
- Restrizioni ISAPI e CGI
- Certificati (ma non vengono visualizzati affatto in connessioni remote)
- Servizio di gestione (ma non viene visualizzato affatto nelle connessioni remote)
- Processi di lavoro
Queste funzionalità vengono visualizzate ovunque tranne la home page del server perché sono la configurazione dell'applicazione e non sono logiche a livello di server o perché funzionano meglio in questo modo (SSL):
- Utenti di appartenenza
- Ruoli di appartenenza
- Profilo
- SSL
Le funzionalità associate alla delega hanno regole speciali per la posizione in cui vengono visualizzate:
- Delega delle funzionalità: viene sempre visualizzata solo per il nodo radice di una connessione
- Amministratori: viene visualizzato solo per i nodi Server, Sito e Applicazione
Layout pagina funzionalità
Esistono tre tipi di pagine in IIS
Pagina elenco
Le pagine elenco contengono elenchi. La maggior parte delle pagine di elenco consente di raggruppare i valori in una o più colonne. Le pagine di elenco principali, ad esempio Siti e Pool di applicazioni, consentono di filtrare le voci dell'elenco cercando in una colonna elenco le voci corrispondenti a una stringa di ricerca.
Figura 3: Pagina elenco gestione IIS
Le attività Aggiungi/Modifica/Rimuovi nel riquadro attività consentono di modificare il contenuto dell'elenco. Le impostazioni delle funzionalità non specifiche di una voce di elenco, ad esempio specificando che gli errori personalizzati devono essere sostituiti da errori dettagliati per le richieste locali, vengono in genere configurati tramite l'attività Modifica impostazioni funzionalità... .
Figura 4: Azioni di Gestione IIS
Griglia proprietà
Le pagine della griglia delle proprietà mostrano le griglie delle proprietà correlate. Il selettore Visualizza nella parte superiore della griglia delle proprietà consente di scegliere se visualizzare i nomi descrittivi delle proprietà, i nomi delle proprietà di configurazione o entrambi. Lo screenshot seguente mostra entrambi i nomi.
Figura 5: Griglie delle proprietà in Gestione IIS
Dialog
Le pagine delle finestre di dialogo hanno caselle di controllo, caselle di testo e pulsanti di opzione e sono in genere il tipo di pagina più familiare. Usare Applica/Annulla nel riquadro attività per salvare le modifiche.
Visualizzazione contenuto
Visualizzazione contenuto è una visualizzazione di sola lettura; non è possibile creare, copiare, spostare o eliminare file o cartelle in questa visualizzazione. È possibile accedere a Visualizzazione contenuto facendo clic su "Visualizzazione contenuto" nell'interruttore Visualizzazione funzionalità/Visualizzazione contenuto nella parte inferiore del riquadro centrale di Gestione IIS oppure facendo clic con il pulsante destro del mouse su un nodo visualizzazione albero e selezionando "Passa alla visualizzazione contenuto".
L'unico modo per impostare la configurazione per un file consiste nel passare a Visualizzazione contenuto, selezionare il file e fare clic su "Passa alla visualizzazione funzionalità" nel menu di scelta rapida o nel riquadro attività.
Figura 6: Passare alla visualizzazione funzionalità
Delega delle funzionalità
Si potrebbe essere interessati alla delega delle funzionalità se si è un amministratore del server e non si è la persona primaria che fornisce contenuto nel server o se si è uno sviluppatore e si vuole un maggiore controllo sulla configurazione iis per l'applicazione.
La delega delle funzionalità IIS significa gestire:
- blocco della sezione di configurazione per controllare la configurazione che può essere impostata in web.config (in genere una sezione di configurazione IIS è un modulo IIS)
- il set di utenti del sito e dell'applicazione autorizzati a usare Gestione IIS per visualizzare la configurazione e impostare la configurazione per le funzionalità con sezioni di configurazione sbloccate
Di seguito è descritta una spiegazione dettagliata della delega delle funzionalità in Gestione IIS. Per una procedura dettagliata, vedere Come gestire la delega delle funzionalità.
Blocco della configurazione
Se una sezione di configurazione è "bloccata" per impostazione predefinita, può essere configurata solo in applicationHost.config. Gestione IIS consente agli amministratori del server di "sbloccare" le sezioni di configurazione iis. Una volta sbloccata una sezione della configurazione, può essere impostata nei file web.config da utenti non amministratori.
Ad esempio, la funzionalità "Pagine di errore personalizzate" in Gestione IIS interagisce con la configurazione nella sezione "system.webServer/httpErrors". Se l'amministratore del server usa Gestione IIS o appcmd per sbloccare la sezione di configurazione system.web/httpErrors, la sezione httpErrors verrà visualizzata all'interno di un tag di posizione con overrideMode="allow" in applicationHost.config:
<location path="" overrideMode="Allow">
<system.webServer>
<httpErrors/>
</system.webServer>
</location>
OverrideMode="allow" indica che è valido impostare la configurazione per httpErrors in un file web.config:
<configuration>
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/errors/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</configuration>
Vedere la sezione "Connessioni server, sito e applicazione" di seguito per vedere in che modo il blocco della configurazione influisce sulle connessioni. Per informazioni approfondite sui blocchi di configurazione, vedere Come usare il blocco della configurazione.
Amministratori di siti e applicazioni
Inoltre, gli amministratori del server possono consentire agli utenti non amministratori di usare Gestione IIS per connettersi a un sito o a un'applicazione. Gli utenti non amministratori che possono connettersi a siti o applicazioni sono denominati "Amministratori del sito" o "Amministratori applicazioni" e possono:
- Gestire la configurazione sbloccata per il sito o l'applicazione (le impostazioni vengono scritte nei file web.config)
- Visualizzare le impostazioni di configurazione bloccate senza poterle modificare
- Aggiungere altri amministratori di siti o applicazioni per il sito o l'applicazione
Per informazioni su come creare amministratori di siti e applicazioni, vedere la documentazione online Creare amministratori di siti e applicazioni per la delega.
Connessioni server, sito e applicazione
Solo gli amministratori di computer possono usare Gestione IIS per connettersi a un server Web. Le connessioni server possono scrivere in entrambi i file di configurazione radice, applicationHost.config e root web.config e in tutti i file web.config distribuiti. Se una sezione di configurazione è bloccata in applicationHost.config, la funzionalità corrispondente verrà di lettura/scrittura in una connessione server perché le modifiche alla configurazione vengono scritte in applicationHost.config in un tag di posizione.
Gli amministratori del computer e gli amministratori del sito designati possono connettersi ai siti Web. Le connessioni al sito possono scrivere solo nei file web.config nella cartella radice del sito. Se una sezione di configurazione è bloccata in applicationHost.config, la funzionalità corrispondente verrà visualizzata in sola lettura nelle connessioni del sito perché le connessioni del sito non possono scrivere la configurazione in applicationHost.config (anche in un tag di posizione). Questo influisce sia sugli amministratori del computer che sugli amministratori del sito.
Figura 7: Configurazione hiearchary in Gestione IIS
Gli amministratori del computer, gli amministratori di applicazioni designati e gli amministratori del sito per il sito padre dell'applicazione possono connettersi a un'applicazione. Le connessioni dell'applicazione possono scrivere solo nei file web.config nella cartella radice dell'applicazione. Se una sezione di configurazione è bloccata in applicationHost.config o nel file web.config del sito, la funzionalità corrispondente verrà visualizzata in sola lettura nelle connessioni dell'applicazione.
Per informazioni su come connettersi a un server, a un sito o a un'applicazione, vedere la documentazione online relativa alla gestione delle connessioni in IIS 7.0.
Impostazione
Anche se non si modifica mai il blocco della configurazione e non si usa mai la delega delle funzionalità, a un certo punto ci si chiederà come Gestione IIS decide dove scrivere la configurazione. Esistono due regole che definiscono questo comportamento:
- ApplicationHost.config e radice Web.config: se la funzionalità è elencata nell'area ASP.NET in Gestione IIS, la configurazione a livello di server verrà scritta nel file web.config radice per .NET Framework v2.0. Se la funzionalità è elencata nell'area IIS in Gestione IIS, la configurazione a livello di server verrà scritta in applicationHost.config. L'unica eccezione a questa regola è l'autenticazione basata su form, che si trova nella funzionalità di autenticazione nell'area IIS.
- Configurazione bloccata e sbloccata: tutte le sezioni di configurazione ASP.NET e alcune sezioni di configurazione iis vengono sbloccate per impostazione predefinita. Per le sezioni sbloccate, Gestione IIS scriverà nel file web.config del sito se la configurazione viene modificata per il sito o la configurazione di un'applicazione se la configurazione viene modificata per un'applicazione. La maggior parte delle sezioni di configurazione iis è bloccata per impostazione predefinita. Per le sezioni bloccate, Gestione IIS scriverà sempre in applicationHost.config anche quando si modifica la configurazione per siti e applicazioni.
Barra di stato
La barra di stato mostra dove Gestione IIS scriverà la configurazione:
Configurazione: config_file_name config_file_name '<config_file_object_path>><', <percorso percorso="<path">>
<config\_file\_object\_path>
è il percorso dell'oggetto file di configurazione, ad esempio:
- "localhost": configurazione a livello di server; applicationHost.config per le funzionalità iis, root web.config per le funzionalità di ASP.NET.
- "localhost/Default Web Site": il file web.config nella cartella fisica del sito Web predefinito
- "localhost/Default Web Site/careers/technical": il file web.config nella cartella fisica mappata all'URL "/careers/technical" nel sito Web predefinito
<config\_file\_name>
è il nome del file di configurazione di destinazione, ad esempio:
- "applicationHost.config o root Web.config": applicationHost.config per le funzionalità iis, root web.config per le funzionalità di ASP.NET
- "web.config": un file web.config nello spazio dei nomi Web
<location\_path>
è il percorso dell'oggetto configurato . Per altre informazioni sui percorsi di posizione, vedere Panoramica della configurazione. Questa parte del testo viene visualizzata solo se la sezione di configurazione della funzionalità è bloccata a un livello superiore.
Esempio: scrittura in ApplicationHost.config e radice Web.config
La compressione è una funzionalità IIS e viene visualizzata in IIS se si raggruppa o si filtra l'elenco delle funzionalità della home page in base all'area. Se si è passati alla pagina Compressione a livello di server e si disabilita la compressione statica, Gestione IIS scriverà questa configurazione in %windir%\Windows\system32\inetsrv\applicationHost.config
:
<urlCompression doStaticCompression="false" />
La compilazione .NET è una configurazione di .NET Framework e viene visualizzata in ASP.NET se si raggruppa o si filtra l'elenco delle funzionalità della home page in base all'area. Se si è passati alla pagina compilazione .NET a livello di server e si imposta il linguaggio predefinito su C#, Gestione IIS aggiungerà l'attributo defaultLanguage alla sezione di compilazione nel file web.config radice, ad esempio %windir%\Windows\\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config
:
<compilation defaultLanguage="C#">
La barra di stato per entrambe queste situazioni leggerà: Configurazione: 'localhost' applicationHost.config o root web.config
Esempio: scrittura in configurazione bloccata e sbloccata
La sezione di configurazione "defaultDocument" di IIS è sbloccata per impostazione predefinita. Se si configura il documento predefinito per il sito Web predefinito, Gestione IIS scriverà questa configurazione in %windir%\inetpub\wwwroot\web.config
:
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="default.aspx" />
</defaultDocument>
</system.webServer>
</configuration>
La barra di stato leggerà: Configurazione: Web.config "Sito Web predefinito".
La sezione di configurazione "httpErrors" di IIS è sbloccata per impostazione predefinita. Se si personalizza la risposta HTTP 404 per il sito Web predefinito, Gestione IIS scriverà questa configurazione in %windir%\Windows\system32\inetsrv\applicationHost.config
:
<location path="Default Web Site" overrideMode="Allow">
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/err/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</location>
La barra di stato leggerà: 'localhost' applicationHost.config o root web.config, <percorso="Sito Web predefinito">
La comunicazione remota di Gestione IIS per IIS 6.0 e le versioni precedenti di IIS era tramite MMC ed era sempre abilitata. Con IIS 7.0 e versioni successive, la comunicazione remota di Gestione IIS deve essere abilitata in modo esplicito. Tutte le operazioni di gestione remota vengono eseguite su HTTPS e vengono gestite da un componente IIS denominato Servizio gestione Web (WMSVC). Per abilitare la gestione remota di IIS 7.0 e versioni successive tramite Gestione IIS, vedere Come abilitare la comunicazione remota di Gestione IIS.
Servizio gestione Web (WMSVC)
Il servizio di gestione Web (WMSVC) è un server Web autonomo (HWC) ospitato in un servizio NT. Dopo l'installazione e l'avvio di WMSVC, è in ascolto sulla porta 8172 su tutti gli indirizzi IP non assegnati. Si prevede di ricevere solo 4 tipi di richieste e ognuno viene usato dal proprio gestore:
- Richieste di accesso a login.axd
- Richieste di download del codice per download.axd
- Richieste di servizio di gestione a service.axd
- Richieste ping a ping.axd
Richieste di accesso
Gestione IIS invia una richiesta di accesso attraverso la rete a WMSVC per intiziare una connessione. L'autenticazione è NTLM o di base, a seconda di ciò che l'utente ha selezionato quando viene chiesto di fornire le credenziali nella finestra di dialogo di connessione.
Figura 9: Specifica delle credenziali
Richieste di download del codice
Se l'accesso ha esito positivo, WMSVC restituisce un elenco di moduli dell'interfaccia utente per la connessione. Ad esempio, ogni pagina di Gestione IIS come "Pagine di errore personalizzate" corrisponde a un modulo. Se iis Manager non dispone di un modulo, richiederà di scaricare i file binari del modulo, ad esempio se un amministratore del server ha installato un nuovo prodotto RSA Security nel server di produzione, ma non ha installato il prodotto nel computer desktop usato per connettersi al server.
Richieste di servizio di gestione
Dopo aver stabilito la connessione, l'utente finale interagisce con Gestione IIS causando richieste del servizio di gestione. Il servizio di gestione richiede servizi modulo diretti in WMSVC per la configurazione di lettura/scrittura, lo stato di runtime e i provider nel server.
Richieste ping
Le richieste ping vengono effettuate dall'interno del servizio WMSVC al server Web (HWC) che ospita. Le richieste ping sono un meccanismo semplice per garantire che il core Web ospitabile continui a essere reattivo.
Configurazione del servizio
WMSVC ha un set molto ridotto di configurazioni modificabili archiviate nel Registro di sistema. Ogni volta che il servizio viene avviato, i file di configurazione Web vengono rigenerati in %windir%\ServiceProfiles\LocalService\AppData\Local\Temp\WMSvc<GUID>\
. I file di configurazione Web non possono essere modificati, anche dagli amministratori.
Figura 10: Modifica della configurazione nel Registro di sistema
Sicurezza
Gestione IIS e la comunicazione remota WMSVC (Web Management Service) sono state sottoposte a una serie di revisioni per garantire che la funzionalità sia semplice e sicura. Ecco alcune delle misure di sicurezza adottate:
- Richiede SSL (HTTPS) per tutte le connessioni per proteggere i dati passati tra il client di Gestione IIS remoto e WMSVC
- Viene eseguito come servizio locale con un set di autorizzazioni ridotto
Configurazione HWC (Hostable Web Core) bloccata, incluso un set minimo di moduli necessari e regole di filtro richieste accuratamente create.