Come installare Apache Virtual Hosts su Debian 9

3 lug 2018 3 min di lettura
Come installare Apache Virtual Hosts su Debian 9
Indice dei contenuti

Introduzione

Il server Apache HTTP è il server web più utilizzato al mondo. Fornisce molte funzioni potenti, tra cui moduli caricabili dinamicamente.

In questo tutorial spiegheremo come installare un server Web Apache su una VPS con Debian 9 Stretch.

Installare Apache

È possibile installare Apache utilizzando il repository ufficiale di Debian con apt.

Aggiornare la lista dei pacchetti:

sudo apt update

Installare Apache:

sudo apt install apache2

Apache dovrebbe essere attivo ed in funzione. Per verificare il suo stato:

sudo systemctl status apache2

A questo punto il server è pronto con le configurazioni di default.

Basta collegarsi al proprio indirizzo IP pubblico oppure in localhost:


http://vostro_dominio_o_ip

http://localhost

Configurare un Virtual Host

Quando si utilizza il server Web Apache, è possibile utilizzare host virtuali per ospitare più domini, quindi più siti web su un singolo server. Configureremo un dominio chiamato esempio.com, ma dovresti utilizzare un dominio esistente.

Apache su Debian 9 ha un blocco server abilitato di default che è configurato per servire i documenti dalla directory /var/www/html correttamente funzionante per un singolo sito. Se si ospitano più siti conviene, invece di modificare /var/www/html, creare una struttura di directory all'interno di /var/www lasciando /var/www/html come directory predefinita da servire se una richiesta client non corrisponde a qualsiasi altro sito configurato come virtual host.

Creare la directory per esempio.com, usando il flag -p per creare tutte le directory necessarie:

sudo mkdir -p /var/www/esempio.com/html

Assegnare l'utente corrente come proprietario della nuova directory:

sudo chown -R $USER:$USER /var/www/esempio.com/html

Assicurarsi che i permessi siano corretti:

sudo chmod -R 755 /var/www/esempio.com

Creare il file index.html per il nostro sito:

sudo nano /var/www/esempio.com/html/index.html

Incollare il seguente testo all'interno del file index.html:


<html>
    <head>
        <title>Ciao da esempio.com!</title>
    </head>
    <body>
        <h1>Esempio.com</h1>
    </body>
</html>

Salvare e chiudere il file

Creare un nuovo file di configurazione per il virtual host di esempio.com, senza andare quindi a modificare quello di default:

sudo nano /etc/apache2/sites-available/esempio.com.conf

Incollare le seguenti righe di codice, facendo attenzione a modificare i valori per il vostro dominio, in questo caso esempio.com:


<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName esempio.com
    ServerAlias www.esempio.com
    DocumentRoot /var/www/esempio.com/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Salvare e chiudere il file.

Abilitare il nuovo sito:

sudo a2ensite esempio.com.conf

Disabilitare il file di configurazione di default:

sudo a2dissite 000-default.conf

Verificare se i dati inseriti nei file sono corrette:

sudo apache2ctl configtest

Dovresti vedere una risposta simile a questa:


Syntax OK

Riavviare Apache:

sudo systemctl restart apache2

Adesso è possibile collegarsi al virtual host appena creato collegandosi al proprio dominio:


http://esempio.com

Aggiungere un altro Virtual Host (Opzionale)

Se si vuole aggiungere un'altro sito con un dominio diverso, quindi creare un altro host virtuale, basta semplicemente ripetere i passaggi già spiegati precedentemente:

sudo mkdir -p /var/www/esempio2.com/html
sudo chown -R $USER:$USER /var/www/esempio2.com/html
sudo chmod -R 755 /var/www/esempio2.com
sudo nano /var/www/esempio2.com/html/index.html

Incollare le seguenti righe di codice:


<html>
    <head>
        <title>Ciao da esempio2.com!</title>
    </head>
    <body>
        <h1>Esempio2.com</h1>
    </body>
</html>

sudo nano /etc/apache2/sites-available/esempio2.com.conf

Incollare le seguenti righe di codice facendo attenzione a modificare i valori con il vostro secondo dominio:


<VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName esempio2.com
    ServerAlias www.esempio2.com
    DocumentRoot /var/www/esempio2.com/html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

sudo a2ensite esempio2.com.conf
sudo apache2ctl configtest
sudo systemctl restart apache2

Il vostro secondo dominio è attivo.

Adesso è possibile collegarsi al virtual host appena creato collegandosi al proprio dominio:


http://esempio2.com

Comandi utili per gestire Apache

Per fermare i processi di Apache quindi per mettere offline il web server:

sudo systemctl stop apache2

Per avviare Apache:

sudo systemctl start apache2

Per riavviare Apache

sudo systemctl restart apache2

Per disabilitare l'avvio automatico di Apache dopo il riavvio del server (VPS):

sudo systemctl disable apache2

Per abilitare l'avvio automatico di Apache dopo il riavvio del server (VPS):

sudo systemctl enable apache2

L'installazione e la configurazione di Apache utilizzando i Virtual Hosts su Debian 9 Stretch è terminata.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.