back to top

Guida base a IIS: il web-server di casa Microsoft

IIS (acronimo di Internet Informatrion Server) è un Web Server, uno strumento legato ad un particolare sistema operativo (Windows), che permette di gestire il traffico d’utenti che hanno accesso ad un particolare sito web, tramite il protocollo TCP/IP.

A livello mondiale, come forse saprete già, i Web Server più utilizati e diffusi sono due: Apache e, appunto, IIS. Mentre Apache è Open Source e gira sia su Windows che Linux, IIS è un componente di Windows (ed è pertanto parte dei pacchetti commerciali di casa Microsoft) e gira nei c.d. sistemi NT.

Nota: IIS non è l’unico Web Server targato Microsoft… nel CD di Windows 98, infatti, era reperibile un software chiamato PWS (Personal Web Server), una sorta di IIS con funzionalità estremamente ridotte pensato quasi esclusivamente per attività di test.

Dicevamo che IIS può girare su piattaforme con kernel NT (quindi Windows 2000 Professional e Server, NT Server, Xp Professional, Windows 2003 Server), tuttavia, per mezzo di una particolare procedura è possibile installare IIS anche sull’edizione HOME di Xp.

La versione ultima di IIS è la 6, legata a Windows 2003 Server, mentre su Xp Professional si trova ancora la versione 5.

Con gli anni IIS è divenuto sempre più stabile e potente, facendone uno strumento indispensabile per chi desidera usare la tecnologia ASP. Ad ogni Web Server, infatti, è sempre legata una tecnologia: solitamente ad IIS si ricollega la tecnologia ASP, grazie alla quale è possibile utilizzare linguaggi di scripting come Vbscript, Jscript, ed anche con particolari accorgimenti PHP.

Nota: Vi segnalo che grazie a CHILI!ASP (www.chiliasp.com), è possibile anche su Linux avere la possibilità di far girare pagine ASP.

Altra nota di cui tener conto, è che tramite IIS è possibile usufruire della tecnologia .Net, grazie al framework Net, scaricabile dal sito Microsoft, il quale in maniera automatica si autoconfigura col servizio di IIS.

Installazione di IIS

Per installarlo è sufficiente seguire il menu Start – Impostazioni – Pannello di controllo – Installazione applicazioni; selezionare la scheda Installazione componenti di Windows e selezionare la voce relativa ad IIS.

E’ possibile selezionare più opzioni in base alle proprie esigenze, in particolare può essere utile installare anche un server FTP, per farlo premere il pulsante ‘dettagli’, selezionare tra le tante voci la voce relativa a FTP servizio.

Altre opzioni sono:

  • la documentazione, ossia tutta la guida per la configurazione di IIS
  • il server SMTP, con cui è possibile avere un server di posta
  • le estensioni FrontPage, componenti con cui è possibile eseguire gli script dinamici di FrontPage
  • il word Wide Web Service è fondamentale perché con esso IIS può rispondere alle richieste dei client, così come i file comuni sono ovviamente necessari per il funzionamento

A questo punto procedere con l’istallazione, assicurandosi di avere a disposizione il CD-ROM del proprio sistema operativo.

Finita l’istallazione, qualora tutto fosse andato in maniera corretta, potremmo scrivere nel nostro browser Internet Explorer o Mozilla, all’interno della barra degli indirizzi, l’URL http://localhost.

Se è visualizzata la pagina di benvenuto, il server sarà ovviamente in stato di attivo, viceversa, in caso di qualche errore o conflitto, vedremmo come risposta del browser "pagina non trovata".

Gestione della sicurezza di IIS

Entriamo nella console di amministrazione di IIS, che in Windows Xp è situata nel pannello di controllo, all’interno degli strumenti di amministrazione.

Selezioniamo "Web Sites" e col mouse, premiamo pulsante destro, e selezioniamo Proprietà. Selezioniamo la scheda "Directory Security", e nella scheda "Accesso Anonimo" premiamo "Modifica". A questo punto si aprirà la finestra "Metodi di Autenticazione", dentro cui ci sono varie opzioni.

La più importante è quella che permette agli utenti esterni di accedere. In Windows esiste un cosiddetto utente Guest, il quale è caratterizzato dall’avere dei diritti molto limitati all’interno del computer a cui accede.

Quindi assicuriamoci che la voce accesso anonimo sia selezionata, e sotto dovremmo vedere un utente con un nome così formattato IUSR_NOMECOMPUTER, dove nomecomputer è il nome del vostro server.

Questo account viene creato al momento in cui installate IIS, e se controllate nel vostro "gestione account" di Windows, notate che viene creato tra gli utenti questo tipo di utente, che appartiene al gruppo dei Guests, quello che appunto rappresenta gli utenti che si collegano al vostro Server con diritti minimi.

Qualora non fosse selezionato accesso anonimo, gli utenti che tentano di collegarsi al vostro sito, sarebbero impossibilitati a navigarvi dentro.

Amministrare IIS

L’amministrazione di IIS viene effettuata principalmente tramite la console che lanciamo dal pannello di controllo, da strumenti di Amministrazione (XP).

Come prima, selezionando Web Sites, ci portiamo sulle proprietà, dove andremo a vedere tutte le caratteristiche salienti del Web Server.

Gli ISAPI filter sono programmi che rispondono agli eventi durante l’elaborazione di una particolare richiesta HTTP. Solitamente sono dei file DLL, dentro cui vengono convogliate particolari funzioni, come per esempio Compression, è una dll che permette di usufruire di funzioni di compressione.

In Rete si trovano moltissimi filtri ISAPI che possono andare ad arricchire il nostro Web Server.

Per dare la priorità ad un particolare ISAPI basta selezionarlo nella lista, e premere le frecce a fianco.

Quelli in alto vengono trattati dal Server con maggiore priorità, ecco perché sono più performanti rispetto a quelli che stanno sotto.

Nella scheda documenti vediamo invece le pagine caricate di default se un utente non specifica il nome di una particolare pagina.

Il server, restituirà il primo documento trovato, tra quelli presenti all’interno della lista. E’ quindi possibile inserire e togliere tali documenti di default per mezzo dei pulsanti Aggiungi e Rimuovi.

A questo punto torniamo nella console di IIS e selezioniamo Sito di Default.

Selezionando Proprietà ci portiamo nella sezione Sito Web , che è tra le più importanti.

Tra le opzioni che meritano attenzione, vi è quella relativa al Log degli accessi.

Se abilitiamo il Logging possiamo definire vari parametri tra cui la directory di destinazione del file di log, il tipo di opzioni da loggare, e eventualmente non limitare la dimensione del file di Log, o se invece crearne uno nuovo ad ogni periodo da noi scelto.

C:WINDOWSSystem32LogFiles

Questa è la directory di default in cui vengono creati i files di Log da IIS.

C:Inetpubwwwroot

In questa directory di solito vengono inseriti tutti i siti web, ed è la cosiddetta ROOT di tutti i siti appartenenti a IIS. Ovviamente, tale opzione può essere cambiata secondo le vostre esigenze e volontà, facendo attenzione che la directory che andate a scegliere sia con i permessi giusti.

Altre opzioni fondamentali sono l’opzione:

  • leggi, con la quale gli utenti possono leggere le pagine del nostro sito
  • accesso agli script invece permette agli utenti di accedere al codice degli script
  • scrivi permette gli  upload la scrittura nella directory
  • directory browsing invece permette la lettura in lista di tutti i file presenti nella dir

Gestire tramite IIS il servizio WWW

Tramite IIS possiamo effettuare le operazioni più importanti quelle di gestione dello stato del Web Server.

Quindi possiamo effettuare lo STOP, il PAUSE o lo START.

Per fermare il Web Server è necessario selezionare dal pannello di amministrazione di IIS, la voce "Sito Web di Default", e con il pulsante destro del mouse scegliere "STOP".

Viceversa scegliamo START per poterlo riavviare.

Scegliendo Esplora possiamo vedere tutti i file contenuti nel sito di default.

Selezionando Apri, si apre l’esplora risorse di Windows.

Selezionando Sfoglia invece vedremo il nostro sito in azione.

Con il comando Esporta è anche possibile esportare il contenuto del sito corrente in un file di testo.

Gestire tramite IIS il servizio FTP

Selezioniamo "Default FTP Sito" e con pulsante destro mostriamo il menu contestuale e scegliamo la voce Proprietà.

Un settaggio fondamentale è la porta in ascolto del servizio FTP, in base alla quale, chi si collega al vostro Server dovrà necessariamente utilizzare.

Solitamente è la 21 ma nessuna vi vieta di spostare il Server su di un’altra.

Enable logging abilita come per il servizio WWW la registrazione degli accessi in un particolare file.

Il numero di connessioni lo impostate con "Limita a", specificando quanti utenti desiderate che siano presenti contemporaneamente.

Connection Timeout Consente di specificare l’intervallo di tempo trascorso il quale il server interromperà la connessione di un utente inattivo.

Nella scheda Home directory è possibile settare invece la directory ove si trovano i file che vedono gli utenti che si collegano al Server FTP.

C:Inetpubftproot

Allo stesso modo, come abbiamo fatto con il servizio WWW, è possibile Avviare, Fermare o mettere in Pausa il Server FTP.

Gestire tramite IIS il servizio di posta SMTP

Se abbiamo scelto di installare il servizio di posta, possiamo avere un server SMTP, grazie al quale è possibile inviare delle mail.

Selezioniamo dal pannello di controllo di IIS "Default Smtp Server" scegliendo la voce "Proprietà" del menu contestuale.

Nella scheda Generale, possiamo settare il numero massimo connessioni contemporanee. Il tempo entro cui il Server SMTP chiude connessione se un utente resta inattivo.

Nella scheda Messaggi possiamo settare:

  • la dimensione massima di un messaggio
  • la dimensione massima totale di sessione che un utente può utilizzare
  • il massimo numero di messaggi per connessione
  • il numero massimo di destinatari per messaggio
C:InetpubmailrootBadmail

Questa, solitamente, è la directory dove vengono inseriti i messaggi che non hanno avuto esito positivo, impostabile, nell’opzione BadMail Directory.

Anche in questo caso ci basterà selezionare il menu contestuale START, STOP, PAUSE, per poter effettuare le operazioni di avvio-interruzione del Server SMTP.

Creare siti virtuali su IIS

Selezionando Default Web Site, apriamo il menu contestuale scegliendo la voce new virtual Directory.

Andiamo Avanti, e scegliamo un alias da dare al nostro sito, ossia un identificativo con il quale è possibile assegnare un nome al nostro particolare sito all’interno di IIS.

Scegliamo come alias per esempio "Test", andiamo avanti e scegliamo una directory alla quale corrisponderà il nostro alias.

http://localhost/Test

Basterà digitare l’indirizzo sopra, per poter verificare che il sito virtuale sia stato creato.

IIS: modificare la porta di ascolto TCP

In una delle precedenti lezioni abbiamo visto che la porta di ascolto per il servizio FTP è, normalmente, la 21. Come standard mondiale si è soliti definire la 80 come la porta con cui scambiare tutti i dati che avvengono tra Server e Client attraverso il protocollo HTTP. Talvolta, comunque, può essere impossibile utilizzare la porta 80, come quando, ad esempio, è già installato un altro Web Server nel sistema (ad esempio Apache).

Per modificare il valore di default per la porta HTTP in IIS selezioniamo Default Web Site e, aprendo il menu, scegliamo proprietà. Così facendo si aprirà la seguente schermata:

A questo punto possiamo inserire la porta che desideriamo, facendo attenzione al fatto che essa non sia già stata utilizzata dal sistema per altri scopi (in caso contrario si genereranno dei conflitti che potrebbero portare ad esiti imprevedibili).

Personalizzare gli errori tramite IIS

Molto interessante può diventare la personalizzazione degli errori, grazie alla quale è possibile indirizzare l’utente alla pagina desiderata al verificarsi di determinati errori.

A livello di logica di programmazione infatti, è un costume quello di associare ad ogni particolare evento di errore un particolare numero identificativo.

Sempre da Default Site selezioniamo Proprietà.

Ci portiamo nella sezione Custom Errors.

Per cambiare la pagina associata ad un determinato errore, selezioniamo dalla lista l’errore HTTP che ci interessa modificare, premiamo Edit ed eventualmente selezioniamo il percorso del file che deve essere richiamato da IIS quando si verifica tale errore.

Ottimizzare IIS

Concludendo la guida, ci resta da focalizzare l’attenzione sulle prestazioni che deve mantenere il vostro server.

Perché questo sia possibile esistono anche molti tools commerciali che si occupano da un lato di monitorare le performance, dall’altro di creare le condizioni perché ciò sia possibile.

Affinché sia possibile dovete anche fare un lavoro lato programmazione, anche se non riguarda questa guida, sono molti gli accorgimenti che un programmatore di pagine Asp potrebbe considerare come

  • Non usare troppo l’oggetto Application
  • Evitare un uso eccessivo delle Server Variables
  • Non usare eccessivamente l’oggetto Session

A livello di IIS dovremmo se possibile evitare un uso sconsiderato dei logs.

Potremmo evitare di caricare troppe librerie ISAPI.

Evitare di usare tempi di Timeout per le connessioni troppo eccessivi.

Controllare che il traffico di Upload e di Download dei file non sia troppo aggressivo.

Cercare di dare i permessi di sola Lettura dove sia possibile, di modo che siano ridotte al minimo le operazioni che deve compiere sul fyle system IIS.

Pubblicitร 

Leggi anche...

ERR_TOO_MANY_REDIRECTS: cos’è e come risolvere l’errore

L'errore ERR_TOO_MANY_REDIRECTS si verifica quando un browser tenta di...

Lucchetto HTTPS barrato di rosso: cosa significa e come risolvere

Il lucchetto HTTPS barrato di rosso mostrato dal browser...

Risolvere l’errore Bad Request … Size of a request header field exceeds server limit

L'errore "Bad Request: Your browser sent a request that...

NGinx: cos’è, come funziona e perché conviene usarlo

Prima di parlare di NGinx, delle sue caratteristiche e...

Errore 410: cos’è, quando si verifica e come risolvere (se necessario)

Il codice di stato HTTP 410 (o “Gone”), più...

Errore 451 Unavailable For Legal Reasons: cos’è e quando si verifica

L'errore HTTP 451 Unavailable For Legal Reasons รจ un...
Pubblicitร