Capitolo 46. Il server Web Apache

Sommario

46.1. Prefazione e terminologia
46.2. Installazione
46.3. Configurazione
46.4. Host virtuali
46.5. Moduli Apache
46.6. Sicurezza
46.7. Soluzione dei problemi
46.8. Per ulteriori informazioni

Estratto

Con una partecipazione superiore al 60%, Apache è il server Web più utilizzato al mondo secondo http://www.netcraft.com. Per le applicazioni Web, Apache è spesso utilizzato su Linux con il database MySQL e i linguaggi di programmazione PHP e Perl. Questa combinazione viene spesso chiamata LAMP.

Questo capitolo presenta il software del Web e del server dell'applicazione Apache nella versione 2.x. L'installazione e la configurazione di Apache sono spiegate in questo capitolo unitamente all'utilizzo di alcuni dei moduli disponibili.

46.1. Prefazione e terminologia

Questa sezione riporta le definizione dei termini frequentemente utilizzati relativi al Web e particolari di Apache.

[Important]Terminologia

In questo documento, il termine Apache si riferisce alla versione Apache 2.x. Per la documentazione relativa ad Apache 1.x, vedere ilsito Web di Apache.

46.1.1. Server Web

Un server Web consegna le pagine Web richieste da un client. Il client può essere un browser Web, ad esempio Konqueror o qualsiasii altro dispositivo in grado di connettersi al World Wide Web (www). Queste pagine possono essere memorizzate per intero su un disco (pagine statiche) o generate in risposta a una query (pagine dinamiche) di un'entità esterna, ad esempio un database o un servizio Web.

46.1.2. HTTP

La comunicazione tra il client e il server Web avviene tramite l'hypertext transfer protocol (HTTP). La versione corrente, HTTP 1.1, è documentata nell' RFC 2068 e nell'aggiornamento RFC 2616. Questi RFC sono disponibili su http://www.w3.org.

46.1.3. URL

URL corrisponde a universal resource locator. I client utilizzano gli URL come http://www.example.com/index.html, per richiedere le pagine dal server. Un URL comprende:

Protocollo

Protocolli frequentemente utilizzati:

http://

Il protocollo HTTP

https://

Versione cifrata, sicura di HTTP

ftp://

File transfer protocol per il download e il caricamento di file

Dominio

In questo esempio, il dominio è www.example.com. Il dominio è il nome che corrisponde a un indirizzo IP. Quindi, www.example.com effettua la mappatura unicamente a un indirizzo IP come 123.456.789.1. A sua volta, il numero identifica unicamente il computer che esegue un server Web. La mappatura di un nome di dominio a un indirizzo IP è comunemente definita risoluzione del nome. Il dominio può essere suddiviso in diverse parti, in questo caso: www, example e com. L'ultima parte del nome di dominio si riferisce al top level domain (TLD). In questo esempio, com è il TLD. Il TLD rappresenta il livello massimo del processo di risoluzione del nome. I TLD possono essere generici (gTLD, come com, org e di rete) o specifici di un paese (ccTLD, come de per la Germania). Tutte le parti di un nome di dominio, riunite insieme, vengono definite come nomi di dominio completi (FQDN).

Risorsa

In questo esempio, la risorsa è index.html. Questa parte specifica il percorso completo alla risorsa. La risorsa può essere un file, come in questo esempio. In ogni caso, può trattarsi anche di uno script CGI, di una pagina JavaServer o di qualche altra risorsa.

Il meccanismo Internet responsabile, ad esempio il domain name system (DNS), inoltra la query al dominio www.example.com a uno o più computer che detengono la risorsa. Apache consegna poi la risorsa effettiva, in questo esempio la pagina index.html, al client. In questo caso, il file è situato nella directory di livello superiore. In ogni caso, le risorse possono anche essere posizionate in sottodirectory, come in http://www.example.com/linux/novell/suse.

46.1.4. Direttiva

Per configurare Apache, il termine direttiva viene spesso utilizzato come sinonimo di «opzione di configurazione.» Direttiva è il termine tecnico del software del server Web Apache.