Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions

  




 

 

Linuxtopia - Red Hat Enterprise Linux Reference Guide (Italiano) - Direttive di configurazione in httpd.conf

10.5. Direttive di configurazione in httpd.conf

Il file di configurazione del Server HTTP Apache � /etc/httpd/conf/httpd.conf. Il file httpd.conf � ben commentato e facile da capire.La sua configurazione di default si adatta bene a molteplici situazioni, anche se � comunque necessario acquisire familiarit� con alcune delle pi� importanti opzioni di configurazione.

AttenzioneAvvertenza
 

Con la versione 2.0 del Server HTTP Apache, molte opzioni di configurazione sono state modificate. Se dovete migrare un file di configurazione della versione 1.3 al nuovo formato, consultate la Sezione 10.2.

10.5.1. Suggerimenti generali di configurazione

Se avete necessit� di configurare il Server HTTP Apache, modificate /etc/httpd/conf/httpd.conf e ricaricate, riavviate oppure spegnete e riavviate, il processo httpd. Per informazioni su come ricaricare, arrestare e avviare il Server HTTP Apache, consultate la Sezione 10.4.

Prima di modificare httpd.conf si consiglia di fare una copia del file originale. Creando un backup, infatti, � possibile rimediare a eventuali errori commessi durante la modifica del file di configurazione.

Se viene commesso un errore e il Web server non funziona correttamente, rivisionare prima i precedenti passaggi in httpd.conf in modo tale da verificare che non ci siano errori di battitura.

Successivamente controllare il log d'errore del server, /var/log/httpd/error_log. Il log d'errore pu� essere non semplice da interpretare, dipende dal vostro livello di esperienza. Se avete dei problemi, le ultime entry nel log d'errore, dovrebbero fornire informazioni utili inerenti a ci� che � accaduto.

Nelle sottosezioni che seguono, troverete una breve descrizione delle direttive incluse in httpd.conf. Tali descrizioni non sono approfondite. Per reperire maggiori informazioni potete consultare la relativa documentazione, disponibile online su http://httpd.apache.org/docs-2.0/.

Per ulteriori dettagli sulle direttive mod_ssl, consultate la documentazione disponibile online su http://httpd.apache.org/docs-2.0/mod/mod_ssl.html.

10.5.2. ServerRoot

ServerRoot � la directory di livello superiore che contiene i file del server. Entrambi i server (sicuro e non sicuro) sono impostati per utilizzare ServerRoot di "/etc/httpd".

10.5.3. PidFile

PidFile nomina il file nel quale � memorizzato il PID (ID del processo). Per default il PID viene memorizzato nella directory /var/run/httpd.pid.

10.5.4. Timeout

Timeout definisce, tempo necessario al server per la ricezione e la trasmissione durante la comunicazione. Timeout � impostato per un'attesa di 300 secondi, ossia il tempo adeguato per la maggior parte delle situazioni.

10.5.5. KeepAlive

KeepAlive stabilisce se il server permetter� pi� di una richiesta per connessione e pu� essere usato per evitare che un client utilizzi troppe risorse del server.

Per default, Keepalive � impostato su off. Se viene impostato su on e il server � particolarmente occupato, il server � in grado di produrre rapidamente il numero pi� elevato di processi figli. In tal caso, il server diventa piuttosto lento. Se abilitate Keepalive, � buona idea avere una impostazione su valori bassi di KeepAliveTimeout (consultate la Sezione 10.5.7 per maggiori informazioni sulla direttiva KeepAliveTimeout) e controllate i file di log /var/log/httpd/error_log sul server. Questo log vi consente di sapere se il server presenta una carenza di processi figli.

10.5.6. MaxKeepAliveRequests

La direttiva imposta il numero massimo di richieste accettate su ogni connessione persistente. Il team di sviluppo di Apache consiglia di impostare un valore alto, al fine di migliorare le prestazioni del server. MaxKeepAliveRequests � impostato per default su 100, un valore che si adatta alla maggior parte delle possibili situazioni.

10.5.7. KeepAliveTimeout

KeepAliveTimeout imposta il numero di secondi durante il quale il server attende una nuova richiesta prima di chiudere la connessione. Una volta ricevuta la richiesta, si applica invece la direttiva Timeout. KeepAliveTimeout � impostato per default su 15 secondi.

10.5.8. IfModule

I tag <IfModule> e </IfModule> creano una sezione attivata solo se il modulo specificato � montato. Le direttive presenti all'interno della sezioneIfModule vengono elaborate solo tramite una di queste due condizioni. Il modulo specificato all'interno del tag di inizio <IfModule> � stato caricato, oppure se un punto esclamativo [!] appare prima del nome del modulo, le direttive sono elaborate solo se il modulo specificato nel tag <IfModule>, non � caricato.

Per maggiori informazioni inerenti i moduli Server HTTP Apache, consultare la Sezione 10.7.

10.5.9. Direttive MPM specifiche del pool di server

Come spiegato nella Sezione 10.2.1.2, con il Server HTTP Apache 2.0 la responsabilit� per la gestione delle caratteristiche del gruppo del server, ricade su di un gruppo di moduli chiamato MPM. Le caratteristiche del gruppo del server differisce a seconda di quale MPM viene usato. Per questa ragione, � necessario una sezione IfModule per definire il gruppo di server per l'MPM in uso.

Per default, Server HTTP Apache 2.0 definisce il pool di server per gli MPM prefork e worker.

Il seguente � un elenco di direttive trovate all'interno delle sezioni MPM specifiche del gruppo di server.

10.5.9.1. StartServers

La direttiva StartServers imposta il numero di processi server che devono essere creati all'avvio. Poich� il Web server elimina o crea dinamicamente i processi server in funzione del carico del traffico, non � necessario cambiare questo parametro. Il vostro Web server � impostato per far partire all'avvio 8 processi server, per l'MPM prefork e 2 per l'MPM worker.

10.5.9.2. MaxRequestsPerChild

MaxRequestsPerChild imposta il numero massimo di richieste che ogni processo figlio pu� gestire prima di essere eliminato. Lo scopo principale di MaxRequestsPerChild � quello di evitare che un processo rimanga in esecuzione troppo a lungo, occupando un'eccessiva quantit� di memoria. Il default MaxRequestsPerChild per l'MPM prefork4000 e per l'MPM worker0.

10.5.9.3. MaxClients

MaxClients imposta un limite per il numero totale di processi server, di client connessi contemporaneamente, in esecuzione allo stesso momento. Lo scopo principale per questa direttiva � di prevenire un crash del sistema operativo da parte di Server HTTP Apache. Si consiglia di mantenere alto questo valore, per server molto occupati. Il default del server � impostato su 150, questo senza tener conto dell'MPM in uso. Tuttavia � consigliato che il valore di MaxClients ecceda 256 quando si usa l'MPM prefork.

10.5.9.4. MinSpareServers e MaxSpareServers

Questi valori vengono usati con l'MPM prefork. Essi determinano come il Server HTTP Apache si adatti dinamicamente al carico di lavoro mantenendo un numero appropriato di processi di riserva del server a seconda del traffico. Viene eseguita la verifica del numero di server in attesa di richiesta che vengono eliminati se superano il valore di MaxSpareServers oppure vengono creati se sono inferiori al valore di MinSpareServers.

Il valore di default di MinSpareServers5, mentre quello di MaxSpareServers20. Queste impostazioni di default dovrebbero essere adatte alla maggior parte delle situazioni possibili. Si consiglia di non aumentare troppo il valore di MinSpareServers, poich� si rischia di sovraccaricare il server quando il traffico non � eccessivo.

10.5.9.5. MinSpareThreads e MaxSpareThreads

Questi valori vengono usati con l'MPM worker. Essi determinano come il Server HTTP Apache si adatti dinamicamente al carico di lavoro mantenendo un numero appropriato di processi di riserva del server a seconda del traffico. Viene eseguita la verifica del numero dei thread del server in attesa di una richiesta, ed elimina alcuni di essi se il loro numero � maggiore del valore di MaxSpareThreads, alternativamente vengono creati altri thread se il loro numero risulta essere inferiore a MinSpareThreads.

Il valore di default di MinSpareThreads25, mentre quello di MaxSpareThreads75. Queste impostazioni di default sono adatte alla maggior parte delle situazioni possibili. Il valore per MaxSpareThreads deve essere maggiore o uguale alla somma di MinSpareThreads e ThreadsPerChild altrimenti il Server HTTP Apache lo corregge automaticamente.

10.5.9.6. ThreadsPerChild

Questo valore viene usato solo con l'MPM worker. Esso imposta il numero di trhead all'interno di ogni processo figlio. Il valore di default per questa direttiva � 25.

10.5.10. Listen

Il comando Listen specifica su quale porta il Web server accetta le richieste in entrata. Per default il Server HTTP Apache attende le richieste sulla porta 80 per la comunicazione Web non sicura e (nel /etc/httpd/conf.d/ssl.conf che definiscono i server sicuri) sulla porta 443 per la comunicazione Web sicura.

Se impostate il Server HTTP Apache in ascolto su una porta inferiore alla 1024, solo l'utente root � in grado di iniziarlo. Per le porte superiori alla 1024, httpd pu� essere iniziato come un utente normale.

La direttiva Listen pu� inoltre essere usata per specificare particolari indirizzi IP dai quali il server accetta le connessioni.

10.5.11. Include

Include consente ad altri file di configurazione di essere inclusi in fase di runtime.

Il percorso di questi file di configurazione pu� essere assoluto o relativo rispetto a ServerRoot.

ImportanteImportante
 

Perch� il server utilizzi moduli in singoli pacchetti, come mod_ssl, mod_perl e php, la direttiva riportata di seguito deve trovarsi in Section 1: Global Environment di http.conf:

Include conf.d/*.conf

10.5.12. LoadModule

LoadModule � utilizzata per caricare i moduli Dynamic Shared Object (DSO). Maggiori informazioni sul supporto DSO di Server HTTP Apache e sull'esatto modo di impiego della direttiva LoadModule sono disponibili sulla Sezione 10.7. L'ordine di caricamento dei moduli non � pi� importante con Server HTTP Apache 2.0. Per ulteriori informazioni sul supporto del Server HTTP Apache 2.0 per il DSO, consultate la Sezione 10.2.1.3.

10.5.13. ExtendedStatus

La direttiva ExtendedStatus controlla se Apache genera informazioni di base (off) sullo stato del server oppure informazioni dettagliate (on), quando viene chiamato server-status. Il gestore Server-status viene chiamato usando i tag Location. Maggiori informazioni sulla chiamata server-status sono incluse nella Sezione 10.5.60.

10.5.14. IfDefine

I tag IfDefine utilizzano le direttive di configurazione specificate al loro interno se nel primo tag la definizione "test" presente nel tag IfDefine risulta essere vera. Le direttive vengono ignorate se il test � falso.

Il test nei tag IfDefine � il nome di un parametro (per esempio, HAVE_PERL). Se il parametro � definito, ossia viene fornito come argomento del comando d'avvio del server, allora il test � vero. In questo caso, quando il Web server viene attivato, il test � vero e le direttive contenute nei tag IfDefine vengono applicate.

10.5.15. SuexecUserGroup

La direttiva SuexecUserGroup, la quale viene originata dal modulo mod_suexec, permette la specificazione dei privilegi di esecuzione dell'utente e del gruppo per i programmi CGI. La richieste non-CGI vengono processate con l'utente ed il gruppo specificato nelle direttive User e Group.

NotaNota Bene
 

La direttiva SuexecUserGroup sostituisce la configurazione Server HTTP Apache 1.3 nell'uso delle direttive User e Group, all'interno della configurazione delle sezioni di VirtualHosts.

10.5.16. User

La direttiva User imposta il nome utente del processo server e determina quale file il server � in grado di accedere. Qualsiasi file non accessibile per questo utente, risultano inaccessibili anche per i client che si collegano al Server HTTP Apache.

L'utente di default per Userapache.

Questa direttiva � sconsigliata per la configurazione degli host virtuali.

NotaNota Bene
 

Per ragioni di sicurezza, l'Server HTTP Apache non funzioner� come utente root.

10.5.17. Group

Specifica il nome del gruppo dei processi del Server HTTP Apache.

Questa direttiva � sconsigliata per la configurazione degli host virtuali.

Per default Group � impostato su apache.

10.5.18. ServerAdmin

Imposta la direttiva ServerAdmin per l'indirizzo di posta elettronica dell'amministratore del Web server. Questo indirizzo di posta elettronica appare nei messaggi di errore delle pagine Web generate dal server, in modo che gli utenti possano riferire eventuali problemi inviando un messaggio all'amministratore del server.

Per default, ServerAdmin � impostato su root@localhost.

Un modo comune per impostare ServerAdmin � di impostarlo su webmaster@your_domain.com. Una volta impostato, assegnate dunque l'alias webmaster alla persona responsabile del Web server nel file /etc/aliases, ed eseguire /usr/bin/newaliases.

10.5.19. ServerName

ServerName specifica un hostname e un numero di porta (corrispondenti alla direttiva Listen) per il server. Il ServerName non deve necessariamente corrispondere al nome reale dell'hostname. Per esempio, il Web server pu� essere www.example.com ma l'hostname del server � foo.example.com. Il valore specificato in ServerName deve essere un Domain Name Service (DNS) valido, che pu� essere risolto dal sistema — evitate di inserire nomi inventati.

Di seguito viene riportato un esempio di direttiva ServerName:

ServerName www.example.com:80

Se specificate un ServerName, accertatevi che nel file /etc/hosts esista una corrispondenza tra indirizzo IP e nome del server.

10.5.20. UseCanonicalName

Quando impostato su on, questa direttiva configura il Server HTTP Apache in modo tale da essere usato come riferimento usando il valore specificato nelle direttive ServerName e Port. Quando UseCanonicalName � impostato su off, il server user� invece il valore usato dal client richiedente.

UseCanonicalName � impostato per default su off.

10.5.21. DocumentRoot

DocumentRoot � la directory che contiene la maggior parte dei file HTML in risposta alle richieste. La directory DocumentRoot di default, per entrambi i Web server, sicuro e non sicuro, � la directory /var/www/html. Per esempio, il server pu� ricevere una richiesta per il documento seguente:

http://example.com/foo.html

Il server cercher� il file riportato di seguito nella directory di default:

/var/www/html/foo.html

Se desiderate modificare DocumentRoot in modo che non sia condivisa dal Web server non sicuro e da quello sicuro, consultate la Sezione 10.8.

10.5.22. Directory

I tag <Directory /path/to/directory> e </Directory> creano ci� che viene riferito come una sezione, usata per raggruppare un insieme di direttive di configurazione da applicare solo a una particolare directory e a tutte le sue sottodirectory. Tutte le direttive applicabili a una directory possono essere usate all'interno dei tag Directory.

Per default, alla directory root (/), vengono applicati i parametri pi� restrittivi, tramite le direttive Options (consultate la Sezione 10.5.23) e AllowOverride (consultate la Sezione 10.5.24). Sotto questa configurazione, alle directory che necessitano di impostazioni meno restrittive devono essere assegnate in modo esplicito quelle impostazioni.

Nella configurazione predefinita, un'altra Directory � configurata per il DocumentRoot la quale assegna un minor numero di parametri rigidi all'albero della directory in modo tale che ilServer HTTP Apache possa accedere ai file presenti.

La sezione Directory pu� essere usata per configurare delle directory cgi-bin aggiuntive per applicazioni di tipo server-side, al di fuori della directory specificata nella direttiva ScriptAlias (consultate la Sezione 10.5.41 per maggiori informazioni).

Per fare questo, la sezione Directory deve impostare l'opzione ExecCGI per quella directory.

Per esempio, se gli script sono posizionati in /home/my_cgi_directory, aggiungere Directory al file httpd.conf:

<Directory /home/my_cgi_directory>
    Options +ExecCGI
</Directory>

Successivamente, la direttiva AddHandler non deve essere commentata per identificare i file con l'estensione .cgi come script CGI. Consultare la Sezione 10.5.56 per istruzioni su come impostare AddHandler.

Per fare ci�, i permessi per gli script CGI, e l'intero percorso per gli script, deve essere impostato su 0755.

10.5.23. Options

La direttiva Options controlla le caratteristiche dei server disponibili in una particolare directory. Per esempio, con i parametri restrittivi specificati per la directory root, la direttiva Options � impostata solo per FollowSymLinks. Non sono abilitate altre caratteristiche, ad eccezione di quella che consente al server di seguire i link simbolici nella directory root.

Per default, nella directory DocumentRoot, la direttiva Options � configurata per contenere Indexes, Includes e FollowSymLinks. Indexes permette al server di generare un elenco di directory per una directory, se non � specificata alcuna direttiva DirectoryIndex (per esempio: index.html). FollowSymLinks consente al server di seguire i link simbolici in questa directory.

NotaNota Bene
 

Le istruzioni Options della sezione di configurazione del server principale, devono essere replicate individualmente su ogni sezione delVirtualHost. Consultate la Sezione 10.5.65 per maggiori informazioni.

10.5.24. AllowOverride

La direttiva AllowOverride consente di stabilire se Options pi� essere ridefinito dalle dichiarazioni presenti in un file .htaccess. Per default, sia la directory root, sia la directory DocumentRoot sono impostate per non permettere di sovrascrivere .htaccess.

10.5.25. Order

La direttiva Order controlla l'ordine con il quale le direttive allow e deny sono valutate. Il server viene configurato per valutare le direttive Allow prima delle direttive Deny per la direttiva DocumentRoot.

10.5.26. Allow

Allow specifica quale client pu� accedere a una determinata directory. Il client pu� essere all, un nome di dominio, un indirizzo IP, una parte dell'indirizzo IP, una coppia rete/maschera di rete e cos� via. La directory DocumentRoot � configurata per Allow o permettere l'accesso da all ossia da tutti i client.

10.5.27. Deny

Deny funziona esattamente come allow, ma specifica quali accessi negare. Per default DocumentRoot non � configurata per Deny o negare alcuna richiesta.

10.5.28. UserDir

UserDir � la sottodirectory all'interno di ogni home directory dell'utente, in cui vanno collocati i file HTML personali che il Web server utilizza. Questa direttiva � impostata per default su disable.

Per default, la sottodirectory � public_html. Per esempio, il server pu� ricevere la richiesta seguente:

http://example.com/~username/foo.html

Il server cerca il file:

/home/username/public_html/foo.html

Nell'esempio precedente /home/username � la home directory dell'utente (ovviamente il percorso di default della directory home pu� essere diverso sul vostro sistema).

Assicuratevi che i permessi della home directory dell'utente siano corretti. L'impostazione esatta � 0711. I bit di lettura (r) e di esecuzione (x) devono essere impostati nelle directory public_html dell'utente (anche 0755 funziona correttamente). I file presenti nelle directory public_html devono essere impostati almeno su 0644.

10.5.29. DirectoryIndex

La direttiva DirectoryIndex � la pagina predefinita che viene restituita al client quando un utente richiede l'indice di una directory, specificando uno slash (/) dopo il nome della directory.

Quando un utente richiede la pagina http://esempio/questa_directory/, riceve la pagina DirectoryIndex, se presente, o un elenco di directory generato dal server. Il default per DirectoryIndexindex.html ed il tipo di mappa index.html.var. Il server cerca di individuare uno di questi file, restituendo il primo file trovato. Se non trova alcun file, e per questa directory � impostata la direttiva Options Indexes, il server genera e restituisce un elenco delle subdirectory e dei file contenuti nella directory in formato HTML, a meno che il contenuto elencato della directory, non viene impostato su off.

10.5.30. AccessFileName

AccessFileName attribuisce un nome al file che il server utilizza per accedere alle informazioni di controllo in ogni directory. Il default � .htaccess.

Immediatamente dopo la direttiva AccessFileName, una serie di tag Files controllano l'accesso ai file che iniziano con .ht. Per ragioni di sicurezza queste direttive negano l'accesso Web a qualunque file .htaccess (o a qualunque altro file che inizi con .ht).

10.5.31. CacheNegotiatedDocs

Per default, il Web server chiede ai server proxy di non conservare nella cache i documenti trasmessi in base al contenuto (ovvero quei documenti che potrebbero essere modificati col tempo o mediante l'inserimento del richiedente). Se CacheNegotiatedDocs � impostato su on, questa funzione viene disabilitata e i server proxy sono autorizzati a conservare i documenti nella cache.

10.5.32. TypesConfig

TypesConfig definisce il nome del file che imposta le mappature dell'elenco predefinito dei tipi MIME (le estensioni dei file per i tipi di contenuto). Il file TypesConfig di default � /etc/mime.types. Invece di modificare questo file, si consiglia di aggiungere i tipi MIME tramite la direttiva AddType.

Per maggiori informazioni su questa direttiva, consultate la Sezione 10.5.55.

10.5.33. DefaultType

DefaultType definisce il tipo MIME di default per i documenti non riconosciuti. Il default � text/plain.

10.5.34. HostnameLookups

HostnameLookups pu� essere impostato su on, off o double. Se HostnameLookups � impostato su on, il server automaticamente resolve l'indirizzo IP per ogni collegamento. Risolvere l'indirizzo IP significa che il server effettua uno o pi� collegamenti ad un server DNS, aggiungendo l'elaborazione overhead. Se HostnameLookups � impostato su double, il server effettua un look up DNS inverso doppio, aggiungendo una maggiore elaborazione overhead.

Per conservare risorse sul server, per default impostate HostnameLookups su off.

Se desiderate vedere gli hostname nei vostri file di log, dovreste eseguire uno dei tanti tool di analisi dei log in grado di effettuare lookup DNS in modo pi� efficiente e su scala pi� ampia nel momento in cui ruotate i file di log.

10.5.35. ErrorLog

ErrorLog specifica il nome del file dove vengono registrati tutti gli errori del server. Per default, il file di log degli errori � /var/log/httpd/error_log.

10.5.36. LogLevel

LogLevel definisce il livello di dettaglio dei messaggi d'errore registrati nel file di registrazione. LogLevel pu� essere impostato (dal pi� dettagliato al meno dettagliato) suemerg, alert, crit, error, warn, notice, info o debug. Il LogLevel di default � warn.

10.5.37. LogFormat

La direttiva LogFormat configura il formato dei diversi file log del Web server. L'attuale LogFormat che verr� utilizzata dipende dalle impostazioni attribuite nella direttiva CustomLog (consultate la Sezione 10.5.38).

Le seguenti, sono delle opzioni del formato se la direttiva CustomLog � impostata su combined:

%h (indirizzo IP dell'host remoto oppure hostname)

Elenca l'indirizzo IP remoto del client richiedente. Se HostnameLookups � impostato su on, l'hostname del client, se disponibile dal DNS, viene registrato.

%l (rfc931)

Non usato. Un trattino [-] viene visualizzato nel file log per questo campo.

%u (utente autenticato)

Elenca il nome utente dell'utente memorizzato se � necessario eseguire l'autenticazione. Generalmente non � usato, quindi viene visualizzato un trattino [-] nel file log per questo campo.

%t (data)

Elenca la data e l'orario della richiesta.

%r (riga di richiesta)

Elenca la riga di richiesta esattamente come arriva dal browser o dal client.

%s (stato)

Elenca il codice dello stato HTTP ritornato all'host del client.

%b (byte)

Elenca la misura del documento.

%\"%{Referer}i\" (referenza)

Elenca l'URL della pagina web riferita all'host del client per il Web server.

%\"%{User-Agent}i\" (utente-agent)

Elenca il tipo di browser web che effettua la richiesta.

10.5.38. CustomLog

CustomLog indica il file di log e il suo formato. Nella configurazione di default, il file di log � registrato sul file /var/log/httpd/access_log.

Il formato CustomLog di default � il formato del file log combined come di seguito riportato:

remotehost rfc931 user date "request" status bytes referrer user-agent

10.5.39. ServerSignature

La direttiva ServerSignature aggiunge una linea contenente la versione del Server HTTP Apache e il ServerName del server host a qualsiasi documento generato dal server stesso (per esempio, i messaggi di errore rispediti ai client). Per default, ServerSignature � impostato su on.

Potete impostarlo anche su off o su EMail. EMail, aggiunge un tag HTML mailto:ServerAdmin alla linea della firma delle risposte generate automaticamente.

10.5.40. Alias

L'impostazione Alias consente alle directory che si trovano al di fuori di DocumentRoot di essere accessibili. Qualunque URL che termina con l'alias viene automaticamente risolto all'interno del percorso dell'alias. Per default, � gi� impostata un alias per la directory icons/. Un Web server pu� accedere alla directory icons/, ma la suddetta directory non � presente nel DocumentRoot.

10.5.41. ScriptAlias

La direttiva ScriptAlias definisce dove sono localizzati gli script CGI. Normalmente � meglio non lasciare gli script CGI all'interno di DocumentRoot, poich� potrebbero essere visualizzati come documenti di testo.Per questa ragione, una directory speciale, esterna alla directory DocumentRoot contenente gli eseguibili e gli script del server, � ideata dalla direttiva ScriptAlias. Questa directory � conosciuta come cgi-bin ed � impostata per default su /var/www/cgi-bin/.

� possibile creare delle directory per conservare gli eseguibili esternamente alla directory cgi-bin. Per informazioni su quanto sopra, consultare la Sezione 10.5.56 e la Sezione 10.5.22.

10.5.42. Redirect

Quando una pagina Web viene spostata, la direttiva Redirect pu� essere utilizzata per rimappare il vecchio URL con quello nuovo. Il formato � il seguente:

Redirect /<old-path>/<file-name> http://<current-domain>/<current-path>/<file-name>

In questo esempio, sostituire <percorso-vecchio> con le informazioni del percorso vecchio per <nome-file> e <dominio-corrente> e <percorso-corrente> con le informazioni correnti del dominio e percorso per <nome-file>.

In questo esempio, qualsiasi richiesta per <nome-file> nella vecchia posizione, � automaticamente ridiretta nella nuova posizione.

Per tecniche pi� avanzate di ridirezione, usare il modulo mod_rewrite incluso con il Server HTTP Apache. Per maggiori informazioni inerenti la configurazione del modulo mod_rewrite, consultare la documentazione online di Apache Software Foundation http://httpd.apache.org/docs-2.0/mod/mod_rewrite.html.

10.5.43. IndexOptions

IndexOptions controlla l'aspetto degli elenchi delle directory generate dal server, aggiungendo icone e descrizioni dei file e cos� via. Se � impostata la direttiva Options Indexes (consultate la Sezione 10.5.23), il Web server genera un elenco delle directory quando lo stesso riceve una richiesta HTTP per una directory senza un indice.

Innanzitutto, il Web server cerca nella directory uno dei file specificati con la direttiva DirectoryIndex (di solito, index.html). Se non viene trovato un file index.html, Server HTTP Apache crea una directory HTML che elenca le directory richieste. L'aspetto di questa directory � controllato, in parte, dalla direttiva IndexOptions.

La configurazione di default imposta su on FancyIndexing. Questo significa che un utente pu� riordinare un elenco della directory, facendo clic sulle intestazioni della colonna. Con un altro clic sulla stessa intestazione si inverte l'ordine da ascendente a discendente. FancyIndexing visualizza icone diverse per file diversi, a seconda dell'estensione.

Se utilizzate la direttiva AddDescription e attivate FancyIndexing, viene visualizzata una breve descrizione dei file nell'elenco delle directory generato dal server.

IndexOptions presenta diversi parametri che possono essere impostati per controllare l'aspetto delle directory generate dal server. I parametri IconHeight e IconWidth, necessitano l'inclusione HTML delle tag HEIGHT e WIDTH da parte del server, per le icone delle pagine Web generate dal server stesso.Il parametro IconsAreLinks combina l'icona grafica con il link HTML, il quale contiene il target del link URL.

10.5.44. AddIconByEncoding

Questa direttiva associa un'icona a un particolare tipo di file secondo la codifica MIME negli elenchi di directory generati dal server. Per esempio, il Web server mostra, per default, l'icona compressed.gif accanto ai file di tipo x-compress e x-gzip negli elenchi della directory generati dal server.

10.5.45. AddIconByType

Questa direttiva specifica il nome dell'icona da visualizzare accanto al file con il tipo MIME negli elenchi delle directory generati dal server. Per esempio, il vostro server � impostato per visualizzare l'icona text.gif accanto al file con il tipo MIME di testo text, negli elenchi della directory generati dal server.

10.5.46. AddIcon

AddIcon specifica l'icona da visualizzare negli elenchi delle directory generati dal server per certi tipi di file o per i file che hanno determinate estensioni. Per esempio, il vostro Web server � impostato in modo da mostrare l'icona binary.gif per i file con estensione .bin o .exe.

10.5.47. DefaultIcon

DefaultIcon specifica l'icona da visualizzare negli elenchi delle directory generati dal server per i file che non hanno altre icone specificate. Il file d'immagine unknown.gif � il default.

10.5.48. AddDescription

Quando utilizzate FancyIndexing come parametro IndexOptions, la direttiva AddDescription pu� essere utilizzata per visualizzare le descrizioni specificate dall'utente, per certi file o tipi di file, negli elenchi della directory generati dal server. La direttiva AddDescription supporta l'elenco di file specifici, espressioni della wildcard, oppure estensioni del file.

10.5.49. ReadmeName

ReadmeName definisce il nome del file che viene aggiunto alla fine degli elenchi delle directory generati dal server. Il Web server cercher� prima di includere il file come documento HTML, poi come file di testo. Nella configurazione di default, ReadmeName � impostato su README.html.

10.5.50. HeaderName

HeaderName specifica il nome del file (se presente nella directory) che viene inserito all'inizio degli elenchi delle directory generati dal server. Come per ReadmeName, il server cerca, se possibile, di includere il file in formato HTML o altrimenti in formato di testo.

10.5.51. IndexIgnore

IndexIgnore elenca le estensioni del file, parti di nomi di file, espressioni wildcard o nomi di file completi. Il Web server non include alcun file che corrisponda a quei parametri negli elenchi delle directory generati dal server.

10.5.52. AddEncoding

AddEncoding definisce le estensioni dei file che hanno una particolare codifica. AddEncoding pu� essere utilizzato anche per indicare ai browser di decomprimere alcuni file mentre vengono scaricati.

10.5.53. AddLanguage

AddLanguage associa l'estensione di un file a una particolare lingua. Questa direttiva � particolarmente utile per Server HTTP Apache, quando il server restituisce un documento in base alla lingua di preferenza del client specificata nel browser.

10.5.54. LanguagePriority

LanguagePriority vi permette di stabilire una lingua prioritaria in caso il browser WEb del client non ha impostato alcuna lingua di preferenza.

10.5.55. AddType

Usare la direttiva AddType per definire o sovrascrivere un tipo MIME di default e coppie di estensione del file. Nell'esempio seguente la direttiva indica a Server HTTP Apache di riconoscere l'estensione del file .tgz.

AddType application/x-tar .tgz

10.5.56. AddHandler

AddHandler mappa l'estensione di un file per handler specifici. Per esempio, l'handler cgi-script pu� essere utilizzato in associazione con l'estensione .cgi per trattare un file che termina con .cgi automaticamente come script CGI. Il seguente � un esempio di direttiva AddHandler per l'estensione .cgi.

AddHandler cgi-script .cgi

Questa direttiva abilita CGI a funzionare esternamente cgi-bin, in qualsiasi altra directory sul server che possiede l'opzione ExecCGI all'interno del "cotainer" delle directory. Consultate la Sezione 10.5.22 per maggiori informazioni sull'impostazione dell'opzione ExecCGI per una directory.

Oltre agli script CGI, il vostro Web server utilizza anche AddHandler per elaborare gli HTML e i file imagemap analizzati dal server.

10.5.57. Action

Action specifica un tipo di contenuto MIME e una coppia di script CGI, in questo modo, quando viene richiesto un file di questo tipo, viene eseguito un particolare script CGI.

10.5.58. ErrorDocument

La direttiva ErrorDocument associa un codice di risposta HTTP con un messaggio o un URL da ritornare al client. Per default, il Web server emette un output di un messaggio di errore quando si verifica un errore. La direttiva ErrorDocument forza il Web server ad emettere un messaggio personalizzato o una pagina.

ImportanteImportante
 

Per essere valido, il messaggio deve deve essere racchiuso in un paio di virgolette ["].

10.5.59. BrowserMatch

La direttiva BrowserMatch consente al server di definire le variabili di ambiente e/o le azioni sulla base del campo dell'intestazione HTTP User-Agent, che identifica il browser del client. Per default, il vostro server Web utilizza BrowserMatch per negare le connessioni a determinati browser con problemi noti e anche per disabilitare i keepalive e i comandi di annullamento delle intestazioni HTTP per i browser che hanno problemi con queste azioni.

10.5.60. Location

I tag <Location> e </Location> vi consentono di specificare il controllo dell'accesso in base all'URL.

Per esempio, per abilitare gli utenti al collegamento dall'interno del dominio del server, per vedere lo stato dei riport, usare le seguenti direttive:

<Location /server-status>
    SetHandler server-status 
    Order deny,allow
    Deny from all 
    Allow from <.example.com>
</Location>

Dovete sostituire <.example.com> con il nome del dominio di secondo livello.

Se desiderate fornire report sulla configurazione del server (inclusi i moduli installati e le direttive di configurazione) da richiedere all'interno del vostro dominio, usare le seguenti direttive:

<Location /server-info>
    SetHandler server-info
    Order deny,allow
    Deny from all
    Allow from <.example.com>
</Location>

Ed ancora, sostituite <.example.com> con il nome del dominio di secondo livello per il Web server.

10.5.61. ProxyRequests

Per configurare il Server HTTP Apache in modo da comportarsi come un server proxy, rimuovere (#) dall'inizio della riga <IfModule mod_proxy.c>, le ProxyRequests, e ogni riga nella sezione <Proxy>. Impostare la direttiva ProxyRequests su On, e impostare quale dominio � abilitato all'accesso del server, nella direttiva Allow from della sezione <Proxy>.

10.5.62. Proxy

I tag <Proxy *> </Proxy> creano un "cotainer" il quale racchiude un gruppo di direttive di configurazione che vengono applicate solo al server proxy. Molte direttive applicabili ad una directory possono essere usate all;interno dei tag <Proxy>.

10.5.63. Direttive della cache

Un numero di direttive commentate della cache, sono fornite dal file di configurazione di default del Server HTTP Apache. In molti casi non commentare queste righe, per fare ci� � sufficiente rimuovere semplicemente il carattere (#) dall'inizio della riga. Quanto segue, rappresenta un elenco di alcune delle direttive pi� importanti relative alla cache.

  • 5CacheEnable — Specifica se la cache � un disco, una memoria, o un file descriptor cache. Per default CacheEnable configura una cache a disco per le URL su o al di sotto di /.

  • CacheRoot — configura il nome della directory che conterr� i file memorizzati nella cache. La direttiva CacheRoot di default � la directory /var/cache/httpd.

  • CacheSize — Specifica quanto spazio in kilobyte, pu� essere usato dalla cache. Il default CacheSize5 KB.

Il seguente � un elenco di alcune delle direttive comuni inerenti alla cache.

  • CacheMaxExpire — Specifica per quanto tempo i documenti HTML vengono trattenuti (senza un ricaricamento dal web server originario) nella cache. Il default � 24 ore 86400 secondi).

  • CacheLastModifiedFactor — si occupa della creazione di una data di scadenza per un documento che non ne possieda una propria. Il valore di default per CacheLastModifiedFactor0.1. Questo significa che la data di scadenza per questi documenti � pari a 1/10 della quantit� di tempo trascorso dall'ultima modifica.

  • CacheDefaultExpire — Specifica in ore la scadenza di un documento ricevuto tramite un protocollo che non supporta la data di scadenza. La configurazione di default � 1 ora (3600 seconds).

  • NoProxy — Specifica un elenco separato da uno spazio di sottoreti, indirizzi IP, domini, o di host i quali contenuti non sono stati conservati nella cache. Questa impostazione � molto utile per siti Intranet.

10.5.64. NameVirtualHost

La direttiva NameVirtualHost associa un indirizzo IP e un numero della porta, se necessario, per ogni host virtuale basato sul nome. La configurazione degli host virtuali basati sul nome, abilita un Server HTTP Apache a servire diversi domini senza usare indirizzi IP multipli.

NotaNota Bene
 

Ogni host virtuale basato sul nome funzioner� solo con connessioni HTTP non sicure, poich� non potete utilizzare host virtuali basati sui nomi con un server sicuro. In questo secondo caso, dovreste utilizzare host virtuali basati su indirizzi IP.

Per abilitare un host virtuale basato sul nome, decommentate la direttiva NameVirtualHost e aggiungete l'indirizzo IP corretto. Successivamente inserite delle sezioni VirtualHost aggiuntive per ogni host virtuale come richiesto dalla vostra configurazione..

10.5.65. VirtualHost

I tag <VirtualHost> e </VirtualHost> creano una sezione riportando le caratteristiche dell'host virtuale. La sezione <VirtualHost> accetta molte direttive di configurazione.

Una sezione VirtualHost commentata � presente in httpd.conf, il quale mostra il set minimo di direttive di configurazione necessario per ogni host virtuale. Consultare la Sezione 10.8 per maggiori informazioni inerenti gli host virtuali.

NotaNota Bene
 

La sezione dell'host virtuale SSL di default � stata spostata nel file /etc/httpd/conf.d/ssl.conf.

10.5.66. Direttive di configurazione per SSL

Le direttive nel file /etc/httpd/conf.d/ssl.conf possono essere configurate per abilitare comunicazioni Web sicure utilizzando SSL e TLS.

10.5.66.1. SetEnvIf

SetEnvIf imposta le variabili dell'ambiente basate sulle intestazioni di collegamenti in entrata. Non � solamente una direttiva SSL, anche se presente nel file /etc/httpd/conf.d/ssl.conf. Il suo scopo � quello di disabilitare i keepalive HTTP e di permettere al protocollo SSL di chiudere la connessione senza un messaggio di avvertimento da parte del browser client. Questa impostazione � necessaria per alcuni browser che non chiudono in modo affidabile la connessione SSL.

Per maggiori informazioni su altre direttive all'interno del file di configurazione SSL, consultate i seguenti URL:

Per informazioni sulla configurazione di un server sicuro HTTP Apache, consultate il capitolo relativo alla configurazione di un server sicuro HTTP Apache nella Red Hat Enterprise Linux System Administration Guide.

NotaNota Bene
 

In molti casi, le direttive SSL sono configurate in modo appropriato durante l'installazione di Red Hat Enterprise Linux. Fate attenzione nell'alterare le direttive del server sicuro HTTP di Apache, in quanto configurarlo in modo non corretto pu� compromettere la sicurezza del vostro sistema.

 
 
  Published under the terms of the GNU General Public License Design by Interspire