4.7.5.2. Apache Web Server (httpd)
Red Hat Enterprise Linux 7 include una versione aggiornata di Apache Web Server. Questa nuova versione (2.4) include alcune modifiche significative e un certo numero di nuove funzioni.
- Nuovo meccanismo di controllo
- Poichè Red Hat Enterprise Linux sposta l'attenzione del sistema dagli SysV init script, i comandi per il controllo del servizio
httpd
sono stati modificati. Red Hat consiglia ora l'uso diapachectl
esystemctl
al posto diservice
. Per esempio, al posto di eseguireservice httpd graceful
Red Hat consiglia ora di eseguireapachectl graceful
. - Modificati alcuni comportamenti del comando secondario predefinito
- Il
systemd
unit file per httpd definisce un comportamento diverso per i comandireload
estop
. In particolare, il comandoreload
esegue la ricarica corretta del servizio mentre il comandostop
ne esegue l'arresto corretto per impostazione predefinita. - Configurazione predefinita codificata
- Le precedenti versioni di httpd fornivano un file di configurazione completo il quale elencava tutte le impostazioni di configurazione e i rispettivi valori predefiniti. Numerose impostazioni di configurazione comuni non vengono più configurate in modo esplicito nei file di configurazione predefiniti; al contrario, le impostazioni predefinite sono ora codificate. Il file di configurazione predefinito presenta ora un contenuto minimo ed è più semplice da gestire. I valori predefiniti codificati per tutte le impostazioni sono specificati nel manuale, il quale per impostazione predefinita viene installato in
/usr/share/httpd
. - Nuovi moduli per il modello di multi-processazione
- Le versioni precedenti di Red Hat Enterprise Linux fornivano svariati Modelli di Multi-processazione (
prefork
eworker
) come binari httpd differenti. Red Hat Enterprise Linux 7 utilizza un binario singolo e fornisce questi Modelli di Multi-processazione come modelli caricabili:worker
,prefork
(default) eevent
. Modificare il file/etc/httpd/conf.modules.d/00-mpm.conf
per selezionare il modello da caricare. - Modifiche della directory
- In questa versione aggiornata di httpd un certo numero di directory sono state spostate o non risultano essere più disponibili.
- Il contenuto precedentemente installato in
/var/cache/mod_proxy
è stato spostato in/var/cache/httpd
sottoproxy
ossl
. - Il contenuto precedentemente installato in
/var/www
è stato spostato in/usr/share/httpd
. - Il contenuto precedentemente installato in
/var/www/icons
è stato spostato in/usr/share/httpd/icons
. Questa directory contiene un insieme di icone usate con gli indici della directory. - La versione HTML del manuale httpd precedentemente installata in
/var/www/manual
è stata spostata in/usr/share/httpd/manual
. - Le pagine d'errore HTTP multi-lingua personalizzate precedentemente installate in
/var/www/error
sono state spostate in/usr/share/httpd/error
.
- Modifiche a suexec
- Il binario
suexec
non presenta più l'identificatore utente impostato su root al momento dell'installazione. Al contrario, viene applicato ora un insieme di permessi più restrittivi usando i bit di capacità del filesystem. Ciò migliora la sicurezza del servizio httpd. Altresìsuexec
invia ora i messaggi di log a syslog al posto di usare il file/var/log/httpd/suexec.log
. I messaggi inviati a syslog sono presenti in/var/log/secure
per impostazione predefinita. - Modifiche alla compatibilità per l'interfaccia del modulo
- Con le modifiche eseguite all'interfaccia del modulo httpd, questa versione aggiornata di httpd non è compatibile con i moduli binari di terze parti compilati con una versione precedente di httpd (2.2). I suddetti moduli dovranno essere modificati per essere conformi all'interfaccia del modulo httpd 2.4, e successivamente ricompilati. Per informazioni consultare la documentazione di Apache sulle modifiche API in versione 2.4
- Modifica alla posizione del binario apxs
- Il binario
apxs
usato per compilare i moduli dal sorgente è stato spostato da/usr/sbin/apxs
a/usr/bin/apxs
. - File di configurazione nuovi e con una posizione modificata
- I file di configurazione che caricano i moduli sono stati spostati nella directory
/etc/httpd/conf.modules.d
. I pacchetti che forniscono i moduli aggiuntivi caricabili per httpd, (come il pacchetto php) aggiungono i file a questa directory. Qualsiasi file di configurazione nella directoryconf.modules.d
viene processato prima della parte principale dihttpd.conf
. I file di configurazione nella directory/etc/httpd/conf.d
sono ora processati dopohttpd.conf
.Alcuni file di configurazione aggiuntivi vengono forniti dal pacchetto httpd:/etc/httpd/conf.d/autoindex.conf
configura l'indicizzazione della directorymod_autoindex
./etc/httpd/conf.d/userdir.conf
configura l'accesso alle directory dell'utente (http://example.com/~username/
). Per impostazione predefinita l'accesso è disabilitato per ragioni di sicurezza./etc/httpd/conf.d/welcome.conf
configura la "Pagina di benvenuto" disponibile suhttp://localhost/
quando non è presente alcun contenuto.
- Modifiche alla compatibilità della configurazione
- Questa versione di httpd non è compatibile con la sintassi di configurazione della versione precedente (2.2). I file di configurazione hanno bisogno di aggiornamenti alla sintassi prima di poterli utilizzare con questa versione aggiornata di httpd. Per maggiori informazioni sulle modifiche relative alla sintassi, consultare la documentazione di Apache per la versione 2.2 e la versione 2.4.