Introduzione
Il server HTTP Apache è uno dei server Web più popolari al mondo. È un server HTTP open source e multipiattaforma che serve una grande percentuale dei siti Web di Internet. Apache offre molte potenti funzionalità che possono essere estese tramite moduli aggiuntivi.
In questo tutorial, spiegheremo come installare Apache su Debian 10 Buster.
Prerequisiti
Prima di iniziare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Se il vostro intento è installare Apache su di un server in remoto continuate a leggere, altrimenti se volete installare Apache sul vostro computer locale saltate il primo paragrafo "Connessione al Server" e leggere il successivo.
Connessione al Server
Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:
ssh root@IP_DEL_SERVER
Successivamente sarà necessario inserire la password dell'utente root.
Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:
ssh nome_utente@IP_DEL_SERVER
Successivamente vi verrà chiesto di inserire la password del vostro utente.
La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Installare Apache
I pacchetti Apache sono disponibili nei repository Debian predefiniti.
L'installazione è piuttosto semplice. Aggiorna l'indice del pacchetto e installa il web server Apache con i seguenti comandi:
sudo apt update
sudo apt install apache
Apache è installato e avviato automaticamente. Per verificare il tipo di stato:
sudo systemctl status apache2
Dovresti ricevere un messaggio di output simile al seguente:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset:
Active: active (running) since Sat 2019-03-22 12:11:31 PDT; 21s ago
...
Regola il firewall
Se non utilizzi un firewall non è necessario eseguire questi comandi.
Gli utenti che utilizzano UFW possono aprire le porte HTTP ( 80
) e HTTPS ( 443
) abilitando il profilo 'Nginx Full':
sudo ufw allow 'Apache Full'
Se si utilizza nftables per filtrare le connessioni al proprio sistema, aprire le porte necessarie eseguendo il comando seguente:
nft add rule inet filter input tcp dport {80, 443} ct state new,established counter accept
Verifica dell'installazione di Apache
Per verificare che Apache funzioni correttamente, apri il browser , digita l'indirizzo IP del server o il nome di dominio http://YOUR_IP_OR_DOMAIN/
e vedrai la pagina di benvenuto predefinita di Apache.
La pagina contiene informazioni di base sui file di configurazione di Apache, script helper e posizioni delle directory.
Struttura e best practice di Apache
- Nei sistemi basati su Debian i file di configurazione di Apache si trovano nella directory
/etc/apache2
. - Il file di configurazione principale di Apache è
/etc/apache2/apache2.conf
. - Le porte che Apache ascolterà sono specificate nel file
/etc/apache2/ports.conf
. - I file degli host virtuali di Apache si trovano nella directory
/etc/apache2/sites-available
. I file di configurazione trovati in questa directory non sono usati da Apache a meno che non siano collegati alla directory/etc/apache2/sites-enabled
. - È possibile attivare una direttiva host virtuale creando un collegamento simbolico utilizzando il comando
a2ensite
dai file di configurazione trovati nella directorysites-available
alla directorysites-enabled
. Per disattivare un host virtuale, utilizzare il comandoa2dissite
. - Si consiglia vivamente di seguire la convenzione di denominazione standard, ad esempio, se il nome del proprio dominio è
mydomain.com
utilizzare come nome del file di configurazione del dominio/etc/apache2/sites-available/mydomain.com.conf
. - I file di configurazione utilizzati per caricare vari moduli Apache si trovano nella directory
/etc/apache2/mods-available
. Le configurazioni nella directorymods-available
possono essere abilitate creando un link simbolico alla directory/etc/apache2/mods-enable
usando il comandoa2enconf
e disabilitate con il comandoa2disconf
. - I file contenenti frammenti di configurazione globali sono archiviati nella directory
/etc/apache2/conf-available
. I file nella directoryconf-available
possono essere abilitati creando un link simbolico/etc/apache2/conf-enabled
all'utilizzo del comandoa2enconf
e disabilitati con il comandoa2disconf
. - I file di registro di Apache (
access.log
eerror.log
) si trovano nella directory/var/log/apache
. Si consiglia di utilizzare file di registro diversiaccess
eerror
per ciascun host virtuale. - È possibile impostare la directory principale del documento di dominio in qualsiasi posizione desiderata. Le posizioni più comuni per webroot includono:
/home/<user_name>/<site_name>
/var/www/<site_name>
/var/www/html/<site_name>
/opt/<site_name>
Conclusione
Installare Apache su Debian è molto semplice, basta eseguire un singolo comando.