Il server HTTP Apache è il server web più popolare al mondo. È un server HTTP gratuito, open source e multipiattaforma che fornisce potenti funzionalità che possono essere estese da un'ampia varietà di moduli. Le seguenti istruzioni descrivono come installare e gestire il server Web Apache sul tuo computer CentOS 7.
Prerequisiti #
Prima di iniziare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Installazione di Apache #
Apache è disponibile nei repository CentOS predefiniti e l'installazione è piuttosto semplice.
Su CentOS e RHEL il pacchetto Apache e il servizio si chiamano httpd
. Per installare il pacchetto eseguire il seguente comando:
sudo yum install httpd
Una volta completata l'installazione, abilita e avvia il servizio Apache:
sudo systemctl enable httpd
sudo systemctl start httpd
Regolazione del firewall #
Se il tuo server è protetto da un firewall devi aprire le porte HTTP e HTTPS, 80
e 443
. Utilizzare i seguenti comandi per aprire le porte necessarie:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Verifica dell'installazione di Apache #
Ora che abbiamo installato ed eseguito Apache sul nostro server CentOS 7 possiamo controllare lo stato e la versione del servizio Apache, con:
sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2018-04-26 07:13:07 UTC; 11s ago
Docs: man:httpd(8)
man:apachectl(8)
Main PID: 3049 (httpd)
...
sudo httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built: Oct 19 2017 20:39:16
Infine per verificare se tutto funziona correttamente, apri l'indirizzo IP del tuo server http://YOUR_IP
nel tuo browser preferito e vedrai la pagina di benvenuto predefinita di CentOS 7 Apache come mostrato di seguito:
Gestione del servizio Apache #
Puoi gestire il servizio Apache allo stesso modo di qualsiasi altra unità di sistema.
Per interrompere il servizio Apache, esegui:
sudo systemctl stop httpd
Per ricominciare, digita:
sudo systemctl start httpd
Per riavviare il servizio Apache:
sudo systemctl restart httpd
Per ricaricare il servizio Apache dopo aver apportato alcune modifiche alla configurazione:
sudo systemctl reload httpd
Se vuoi disabilitare il servizio Apache per l'avvio all'avvio:
sudo systemctl disable httpd
E per riattivarlo di nuovo:
sudo systemctl enable httpd
Struttura e best practice del file di configurazione di Apache #
- Tutti i file di configurazione di Apache si trovano in
/etc/httpd
directory. - Il file di configurazione principale di Apache è
/etc/httpd/conf/httpd.conf
. - Tutti i file di configurazione che terminano con
.conf
che si trova nel/etc/httpd/conf.d
sono incluse nel file di configurazione principale di Apache. - I file di configurazione responsabili del caricamento di vari moduli Apache si trovano in
/etc/httpd/conf.modules.d
directory. - Per una migliore manutenibilità si consiglia di creare un file di configurazione separato (vhost) per ogni dominio.
- I nuovi file vhost Apache devono terminare con
.conf
ed essere archiviato in/etc/httpd/conf.d
directory. Puoi avere tutti i vhost di cui hai bisogno. - È una buona idea seguire una convenzione di denominazione standard, ad esempio se il tuo nome di dominio è
mydomain.com
quindi il file di configurazione dovrebbe essere chiamato/etc/httpd/conf.d/mydomain.com.conf
- File di registro di Apache (
access_log
eerror_log
) si trovano in/var/log/httpd/
directory. Si consiglia di avere unaccess
diverso eerror
log per ogni vhost. - Puoi impostare la directory principale del documento di dominio in qualsiasi posizione desideri. Le posizioni più comuni per webroot includono:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>