È possibile utilizzare host virtuali (vhost) per servire più domini senza la necessità di ulteriori indirizzi InternetProtocol (IP). Con vhosts, le diverse pagine vengono visualizzate in base alle impostazioni nel file host per il particolare sito richiesto. Questo articolo descrive come creare un vhost su Ubuntu® 20.04 e Debian® 10.
Nota: In questo articolo puoi sostituire il segnaposto di example.com con il dominio per il quale stai configurando il vhost.
Prerequisiti
- Un server Linux® che esegue la distribuzione Ubuntu versione 20.04 o Debian versione 10
- Apache installato. Installalo usando il seguente comando:
sudo apt install apache2
- DNS che punta il sito all'IP del server
- Un utente con privilegi di amministratore SSH
- Firewall configurato per consentire il traffico sulla porta 80
Configura un vhost
Utilizzare i seguenti passaggi per configurare un vhost Apache®:
-
Crea una nuova directory per memorizzare il contenuto del sito web. Questa directory è nota come documento radice cartella nel tuo file di configurazione dell'host virtuale Apache.
sudo mkdir -p /var/www/vhosts/example.com/public_html
-
Imposta i permessi per la nuova directory. Sostituisci
vhostuser
nel nome utente:vhostuser parametro con un utente sul server che ha accesso alla directory.sudo chown -R username:vhostuser /var/www/vhosts/example.com/public_html
-
Imposta i permessi di lettura per tutti gli utenti per la directory.
sudo chmod -R 755 /var/www/vhosts/
-
Crea il file di configurazione per il sito vhost.
vi /etc/apache2/sites-available/example.com.conf
-
Incolla il seguente testo nel file che hai creato. Sostituisci esempio.com con il nome host del tuo sito.
ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/vhosts/example.com/public_html <Directory /var/www/vhosts/example.com/public_html> Options -Indexes +FollowSymLinks AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
Nota: Al termine delle modifiche, salva il file premendo Esc per passare alla modalità comando e digitare
:xq
per uscire e salvare le modifiche. -
Crea un collegamento simbolico dal file dell'host virtuale alla directory dei siti abilitati per abilitare il nuovo file dell'host virtuale utilizzando il comando a2ensite.
sudo a2ensite domain.com
-
Verifica la presenza di problemi. Dovresti ottenere un Sintassi OK risposta.
sudo apachectl configtest
-
Riavvia Apache.
sudo systemctl restart apache2
-
Se desideri visualizzare una pagina di prova, puoi creare un file denominato index.html nella tua cartella principale.
vi index.html
-
Incolla il seguente testo.
<html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>vhost test for example.com</title> </head> <body> <h1>Success! example.com vhost!</h1> </body> </html>
-
Salva ed esci dal file.
:xq
-
Vai a http://example.com/index.html per visualizzare la pagina di prova.