Connect with us

Linux

Crea host virtuali Apache basati su nome e IP in Linux


Hosting virtuale è un concetto in cui più siti Web o domini sono ospitati su un singolo server, il che viene fatto per ridurre il sovraccarico delle risorse e i costi di gestione di un’azienda o organizzazione.

Il server web Apache semplifica l’hosting di più siti consentendo agli amministratori di sistema di configurare facilmente host virtuali per ciascun sito web. L’hosting virtuale può essere basato su IP o basato sul nome.

In questo tutorial, esploriamo come configurare l’hosting virtuale nelle distribuzioni basate su RHEL come Fedora, Flusso CentOS, Linux roccioso, E AlmaLinux utilizzando host virtuali sia basati su IP che basati su nome in Linux.

Hosting virtuale Apache in Linux
Hosting virtuale Apache in Linux

I concetti di Hosting Web condiviso E Hosting web per rivenditori si basano principalmente su questa funzionalità di Apache.

Tipi di hosting virtuale Apache in Linux

Ne esistono due tipi Hosting virtuale è disponibile con Apache.

Hosting virtuale basato sul nome

In questo tipo di hosting è possibile ospitare più domini o siti web su un unico server utilizzando un solo indirizzo IP. In poche parole, tutti i domini condivideranno un unico indirizzo IP. Questo è il tipo di hosting virtuale più semplice da configurare poiché tutto ciò che devi fare è mappare i nomi di dominio sull’indirizzo IP e quindi configurare gli host virtuali Apache per ciascuno dei nomi di dominio.

Hosting virtuale basato su nome Apache in Linux
Hosting virtuale basato su nome Apache in Linux

Hosting virtuale basato su IP

L’hosting virtuale basato su IP è il luogo in cui a ciascun dominio viene assegnato un indirizzo IP univoco. Questi indirizzi IP possono essere collegati al server utilizzando più schede NIC o una singola scheda NIC.

Hosting virtuale basato su IP Apache in Linux
Hosting virtuale basato su IP Apache in Linux

Ambiente di test

  • sistema operativoFedora34
  • ApplicazioneServer Web Apache
  • Indirizzo IP192.168.2.105
  • Indirizzo IP192.168.2.106
  • Dominiowww.miodominio1.com
  • Dominiowww.miodominio2.com

Come configurare host virtuali Apache basati su IP e basati sul nome

Prima di iniziare, assicurati che il file Apache il server web è installato sul tuo sistema utilizzando il comando dnf come mostrato.

$ sudo dnf install httpd -y
Installa Apache su Linux
Installa Apache su Linux

Configura hosting virtuale basato sul nome

Il primo passo nella configurazione dell’hosting virtuale basato sul nome è impostare la risoluzione del nome di dominio nel file /etc/hosts file. Pertanto, esegui i seguenti comandi come utente root per aggiungere le voci del nome di dominio che puntano all’indirizzo IP dell’host.

$ echo '192.168.2.105 www.mydomain1.com' >> /etc/hosts
$ echo '192.168.2.105 www.mydomain2.com' >> /etc/hosts

Il passaggio successivo è creare una directory che conterrà i file del sito Web. Pertanto, creeremo due directory per gli host virtuali nella Document Root che è la /var/www/html cartella nella configurazione di Apache.

$ sudo mkdir /var/www/html/mydomain1.com/
$ sudo mkdir /var/www/html/mydomain2.com/

Il passaggio successivo consiste nel modificare il file host virtuale che istruirà Apache l’IP ad ascoltare le richieste in arrivo del server Web Apache per tutti i nomi di dominio. Apri quindi il file di configurazione di Apache utilizzando il tuo editor di testo preferito.

$ sudo vim /etc/httpd/conf/httpd.conf

Aggiungi i seguenti blocchi di codice per i due host virtuali.

<VirtualHost 192.168.2.105:80>
   ServerName mydomain1.com
   ServerAlias www.mydomain1.com
   DocumentRoot /var/www/html/mydomain1.com/
ErrorLog logs/www.mydomain1.com-error_log
CustomLog logs/www.mydomain1.com-access_log common
</VirtualHost>


<VirtualHost 192.168.2.105:80>
    ServerName mydomain2.com
    ServerAlias www.mydomain2.com
    DocumentRoot /var/www/html/mydomain2.com
ErrorLog logs/www.mydomain2.com-error_log
CustomLog logs/www.mydomain2.com-access_log common
</VirtualHost>

Salva le modifiche ed esci. Successivamente, controlla se la sintassi è corretta e che non ci siano errori.

$ httpd -t

Successivamente, creeremo pagine di test HTML per ciascuno dei domini e aggiungeremo alcuni contenuti per verificare se tutto funziona correttamente dal browser.

Per miodominio1.com

Creare un indice.html file sotto il miodominio1.com directory.

$ sudo vim /var/www/html/mydomain1.com/index.html 

Incolla le seguenti righe.

<html>
  <head>
    <title>My sample site</title>
  </head>
  <body>
    <h1>Success! Welcome to mydomain1.com.</h1>
  </body>
</html>

Salvare le modifiche ed uscire dal file.

Per miodominio2.com

Creare un indice.html archiviare sotto miodominio2.com directory.

$ sudo vim /var/www/html/mydomain2.com/index.html 

Incolla le seguenti righe.

<html>
  <head>
    <title>My sample site</title>
  </head>
  <body>
    <h1>Success! Welcome to mydomain2.com.</h1>
  </body>
</html>

Salvare le modifiche ed uscire dal file.

Ora avvia il server web Apache e verifica che sia in esecuzione.

$ sudo systemctl start httpd
$ sudo systemctl status httpd
Controlla Apache in Linux
Controlla Apache in Linux

Se hai un firewall abilitato, consenti il HTTP E HTTPS (quando necessario) traffico.

$ sudo firewall-cmd --add-service=http --zone=public --permanent
$ sudo firewall-cmd --add-service=https --zone=public --permanent
$ sudo firewall-cmd --reload

Ora testa i domini da un browser.

Controlla miodominio1.com
Controlla miodominio1.com
Controlla miodominio2.com

Configura hosting virtuale basato su IP Linux

L’hosting virtuale basato su IP, come suggerisce il nome, prevede più indirizzi IP assegnati al tuo server Linux. Nella maggior parte dei casi, al sistema vengono collegate due o più schede NIC per fornire più indirizzi IP.

L’obiettivo dell’hosting virtuale basato su IP è assegnare ciascun dominio a un indirizzo IP univoco che non verrà utilizzato da nessun altro dominio.

Questo è l’ideale per le situazioni in cui disponi di siti Web crittografati con un certificato SSL (mod_ssl) o in esecuzione su porte diverse. Nella nostra configurazione abbiamo due adattatori NIC.

Per visualizzare la configurazione IP sul tuo sistema, esegui il comando ifconfig o ip a.

$ ifconfig
OR
$ ip addr
Controlla l'indirizzo IP in Linux
Controlla l’indirizzo IP in Linux

Il nostro server ha due indirizzi IP, ciascuno assegnato a una scheda NIC. L’IP 192.168.2.106 è assegnato a ens160 E 192.168.2.105 è assegnato a ens224.

Ancora una volta, configuriamo il file httpd.conf file.

$ sudo vim /etc/httpd/conf/httpd.conf

Crea host virtuali per entrambi i domini come mostrato. Assicurati che ciascun indirizzo IP sia assegnato alla rispettiva configurazione dell’host virtuale.

<VirtualHost 192.168.2.105:80>
   ServerName mydomain1.com
   ServerAlias www.mydomain1.com
   DocumentRoot /var/www/html/mydomain1.com/
ErrorLog logs/www.mydomain1.com-error_log
CustomLog logs/www.mydomain1.com-access_log common
</VirtualHost>


<VirtualHost 192.168.2.106:80>
    ServerName mydomain2.com
    ServerAlias www.mydomain2.com
    DocumentRoot /var/www/html/mydomain2.com
ErrorLog logs/www.mydomain2.com-error_log
CustomLog logs/www.mydomain2.com-access_log common
</VirtualHost>

Salvare ed uscire dal file di configurazione. Successivamente, modifica il /etc/hosts file come mostrato.

$ echo '192.168.2.105 www.mydomain1.com' >> /etc/hosts
$ echo '192.168.2.106 www.mydomain2.com'>> /etc/hosts

Conferma le voci:

$ cat /etc/hosts

192.168.2.105 www.mydomain1.com
192.168.2.106 www.mydomain2.com

Successivamente, riavvia il server web Apache affinché le modifiche diventino effettive.

$ sudo systemctl restart httpd

Infine, prova la tua configurazione di hosting virtuale basata su IP accedendo agli URL come mostrato.

http://192.168.2.105
http://192.168.2.106
Controlla miodominio1.com
Controlla miodominio2.com
Controlla miodominio2.com

Questo test conferma che l’hosting virtuale basato su IP funziona proprio come previsto!

Conclusione

E questo è tutto per questa lezione. Ci auguriamo che tu possa configurare perfettamente entrambi i tipi di hosting virtuale senza troppi problemi. Il tuo feedback su questa guida è molto apprezzato.


Ti e piaciuto questo articolo?
Supporta il mio lavoro, facendo una donazione!

Click to comment

Leave a Reply

Esegui l'accesso per Commentare

Di tendenza

Close Popup
Questo sito utilizza i cookie per migliorare servizi ed esperienza dei lettori. Se decidi di continuare la navigazione senza blocchi premi su Accetto, oppure continua tranquillamente la navigazione, nessun dato sulla tua navigazione verrà raccolto.
Close Popup
Privacy Settings saved!
Impostazioni

Quando visiti un sito Web, esso può archiviare o recuperare informazioni sul tuo browser, principalmente sotto forma di cookies. Controlla qui i tuoi servizi di cookie personali.

Questi cookie sono necessari per il funzionamento del sito Web e non possono essere disattivati nei nostri sistemi.

Cookie tecnici
Per utilizzare questo sito web usiamo i seguenti cookie tecnici necessari:
  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec
  • swpm_session

Google Adsense
Usiamo la pubblicità di Google solo per mantenere attivi i nostro sito. Con ip anonimizzati.

Rifiuta tutti i Servizi
Save
Accetta tutti i Servizi