Sconti Amazon
lunedì 11 ottobre 2004 di Michele Nasi e Davide Marche 271895 Letture

Server web: installazione, configurazione. Sviluppo di pagine dinamiche.

Apache è il server web attualmente più utilizzato al mondo nato per funzionare come processo "stand alone" ossia senza richiedere l'appoggio di altre applicazioni o di altri componenti software. Si tratta di un prodotto solido, performante e supercollaudato: è il frutto (completamente gratuito) del lavoro di un team di volontari, noto come Apache Group.

Apache è un software estremamente aperto (sono addirittura reperibili sul sito www.apache.org i sorgenti veri e propri) che offre anche la possibilità ad altre aziende di crearsi un business mediante lo sviluppo di plug-in, aggiunte varie, strumenti di configurazione, tool di supporto e così via.

Il server web Apache, nato in ambiente Linux, è stato più di recente portato anche in Windows. Apache differisce da IIS per il fatto di essere completamente gratuito e di mettere a disposizione tutte le funzionalità di un server web avanzato. Tra l'altro Apache può essere impiegato su una qualunque versione di Windows (Windows 9x compreso).

L'ultima versione di Apache al momento disponibile, è scaricabile dal sito web ufficiale, raggiungibile all'indirizzo httpd.apache.org. Sullo stesso sito è possibile reperire le informazioni relative all'installazione, alla configurazione ed all'aggiornamento del server Apache. L'Apache Group è poi solito pubblicare tempestivamente, proprio in questo sito web, le patch risolutive per eventuali bug di sicurezza scoperti con il passare del tempo.

Come detto, il web server Apache può essere installato su tutti i sistemi Microsoft a partire da Windows 95, ma è necessario predisporre il sistema in modo che:
- sia presente il protocollo TCP/IP. In realtà su qualunque sistema che si connetta a Internet questo protocollo è sicuramente presente, e inoltre viene installato di default, quindi non dovrebbero esserci problemi. Diversamente, è sufficiente inserire il CD di Windows nel lettore ed aggiungere manualmente il componente;
- sia presente Winsock 2. Questa osservazione vale solo per gli utenti di Windows 95, i quali devono fare riferimento al sito di Microsoft per informazioni.

Una volta preparato il sistema, e dato per scontato di aver scaricato il file di installazione per sistemi Windows, provvediamo a lanciarlo. L'installazione di per sé non presenta nessun problema dato che ci troviamo dinanzi alle classiche finestre di setup di tutti i programmi che conosciamo.


Apache 2.x
Nel caso in cui abbiate scelto di installare la versione 2.x di Apaache, dopo l'accettazione dei termini della licenza d'uso (che consigliamo di leggere con attenzione) e delle note generali sull'installazione ("Read This First") sarà necessario inserire alcune informazioni riguardo al server web che si sta configurando. Se state installando Apache per la prima volta, con lo scopo di saggiarne le principali funzionalità, digitate localhost nel campo Server Name ed inserite la vostra e-mail nel campo Administrator's email address. Lasciate attiva l'opzione for All users, on Port 80, as a service.

Nella finestra successiva selezionate Typical quale modalità di installazione quindi inserite la cartella ove desiderate che Apache venga collocato.

Cliccando sul pulsante Install verrà avviata la fase di setup che si concluderà in pochi istanti. Al termine della procedura, all'interno della traybar (ossia l'area situata in basso a destra, accanto all'orologio di Windows), dovrebbe comparire l'icona di Apache, a segnalare che il web server è già in esecuzione.

Nel caso di Apache 2.x, ad installazione conclusa provate ad avviare Internet Explorer od il browser in uso e digitate http://localhost. Se il server web vi risponderà con la finestra visualizzata in figura avrete già installato correttamente Apache. I file componenti il sito web (html, php,...) andranno posti nella sottodirectory denominata htdocs (vedere più avanti per maggiori dettagli). All'interno della stessa cartella, potete creare sottodirectory in modo che il loro contenuto possa essere richiamato, dal browser Internet, nella forma http://localhost/nomesottodirectory/nomefile.html. Se l'utente non specifica alcun file ma si limita a digitare un URL del tipo http://localhost/nomesottodirectory, il primo file che verrà automaticamente richiamato sarà index.html.

Apache 1.3.x e superiori
Nel caso in cui stiate installando Apache 1.3.x (o versioni superiori ma comunque della serie 1.x), portata a termine la prima fase dell'installazione, anche in questo caso viene istintivo cercare di avviare il web server. Dal percorso Start->programmi->apache http server->control apache server notiamo che disponiamo di tre comandi, nell'ordine restart, start e stop. Provando a cliccare su start molto probabilmente apache si rifiuterà di partire, presentando un messaggio del tipo
Cannot determine local host name
Perché? Fondamentalmente perché il web server apache è un componente all'apparenza molto semplice ma la cui configurazione non è così agevole. La configurazione del sistema è infatti affidati ad un semplice file di testo e non ad una interfaccia grafica.

Configurazione di Apache con httpd.conf
Recatevi dentro la cartella in cui avete installato Apache, e poi ancora dentro la sottocartella conf. Noterete un file chiamato httpd.conf (supponendo che il sistema sia settato per visualizzare anche le estensioni dei file), che è appunto il file di testo di setup del web server e che contiene un gran numero di parametri, alcuni dei quali debbono essere necessariamente noti. Trattandosi appunto di un semplice file di testo, apritelo con un editor testuale (anche il Blocco note di Windows è sufficiente per i nostri scopi). Nel seguito supporremo che prima di modificare httpd.conf vi ricordiate sempre di stoppare il server e di riavviarlo subito dopo.

Per prima cosa, vediamo come risolvere il messaggio di errore che si è prospettato in precedenza davanti a noi nel caso di installazione di Apache 1.x. Tramite il menù modifica->trova del Blocco Note di Windows (o del vostro editor di testi preferito) ricercate una riga che si presenta in questo modo:

#ServerName new.host.name

Cominciamo col cancellare il simbolo # che nel file di configurazione di apache equivale a commentare la riga (le righe commentate vengono poi ignorate dal software) e sostituiamo poi alla dicitura new.host.name l'host name della macchina sulla quale è installato il web server. Se dovete utilizzare il web server localmente la dicitura localhost è più che sufficiente, se invece la macchina fa parte di una rete intranet può essere necessario rivolgersi all'amministratore di rete per sapere quale host name usare.

A questo punto la riga si dovrebbe presentare in questo modo

ServerName localhost

Salviamo il file di configurazione e chiudiamolo. A questo punto il web server apache si dovrebbe correttamente avviare (sempre tramite il percorso start->programmi->apache http server->control apache server). Se non riceviamo messaggi di errore e vogliamo accertarci che il web server sia in esecuzione apriamo un browser e digitiamo http://localhost/ nella barra degli indirizzi (si sta supponendo di lavorare in locale). Dovrebbe comparire una presentazione del web server come nella foto:


Questo perché di default apache considera la sottocartella htdocs come punto di partenza del web server pubblico. Cioè significa che se non interveniamo sulla configurazione saremo costretti a inserire i nostri files dentro la medesima cartella, che già contiene appunto la documentazione, creando solamente un sacco di confusione! A titolo d'esempio, il lettore può verificare che all'interno della suddetta cartella sono presenti i file di presentazione in varie lingue e la documentazione di apache. Tuttavia, è di nostro interesse vedere come configurare al meglio apache per una gestione più ordinata. Una possibile soluzione potrebbe essere questa: create una cartella all'interno della cartella di apache, ad esempio con l'esplicativo nome WWW: nel nostro caso, ad esempio, il percorso completo è C:/Programmi/Apache Group/Apache/WWW. Ora riaprite il file di configurazione di apache e cercate una riga che si presenta in questo modo

DocumentRoot "C:/Programmi/Apache Group/Apache/htdocs"

e sostituitela con il valore da voi scelto, nel mio caso

DocumentRoot "C:/Programmi/Apache Group/Apache/WWW"

Tenete però presente che così facendo tutti i file che intendete visualizzare tramite il web server devono trovarsi all'interno della cartella da voi indicata o in una delle sue sottocartelle.
A questo punto è necessario anche modificare una direttiva che si trova poco dopo DocumentRoot e che si presenta in questo modo

<Directory "C:/Programmi/Apache Group/Apache/htdocs"

Nel nostro caso, come avrete certamente intuito, la riga deve diventare

<Directory "C:/Programmi/Apache Group/Apache/WWW">

Se salvate il file e riavviate il server questo adesso cercherà i file nella cartella WWW in maniera del tutto trasparente. Per essere sicuri di questo fatto posizionate un file html dentro la cartella WWW e verificate.

Gli altri parametri che riguardano la configurazione di apache in questa sede non ci interessano, basti sapere che si possono configurare parametri quali: la porta d'ascolto del server, l'email dell'amministratore del sistema, i valori di timeout, la modalità del server (sotto windows deve essere standalone) ma in ogni caso se state lavorando in locale sono fondamentalmente ininfluenti, diversamente è necessario rivolgersi all'amministratore di rete.

Suggeriamo di fare riferimento a questa pagina per ottenere una lista completa delle regolazioni (direttive) applicabili. Per rendere la configurazione di Apache più semplice ed intuitiva - evitando, così, di dover intervenire direttamente sul file di testo httpd.conf - sono nati anche dei tool basati su interfaccia grafica, facilmente reperibili in Rete.

Nella prossima puntata vedremo come installare Perl, PHP (sia sotto Apache che in IIS) oltre ad analizzare i primi esempi di pagine ASP.


Buoni regalo Amazon
Server web: installazione, configurazione. Sviluppo di pagine dinamiche. - IlSoftware.it - pag. 6