VirtualHost Name-based e IP-Based

postato in: LAMP, Linux | 1

Quando utilizziamo Apache come webserver, può esserci richiesto di ospitare più siti sullo stesso server; qualora questi abbiano nomi a dominio completamente diversi il farli coesistere diventa un problema. All’interno di Apache possiamo  risolvere questo problema ricorrendo all’utilizzo dei VirtualHost. Apache dal canto suo ci mette a disposizione due metodi di gestione dei Virtual Host uno basato sull’utilizzo degli IP e uno basato sull’utilizzo dei nomi a dominio.

Quindi la configurazione dei VirtualHost può essere di due tipi:

  • Ip-based ( più domini su IP diversi)
  • Name-based (più domini sullo stesso IP)

L’ IP-Based prevede che ogni sito sia collegato a un IP differente, questa soluzione è se pur la più semplice difficilmente utilizzabile in quanto spesso non si hanno a disposizione molti IP liberi e renderebbe comunque il server più complesso da gestire.

Invece la soluzione che prevede l’utilizzo dei VirtualHost Name-Based permette di utilizzare un solo IP ma ci obbliga a una configurazione di Apache che introduce elemente non sempre noti anche se facilmente assimilabili.

VirtualHost Name-Based

Apache supporta anche il virtual-hosting basato sul nome del server, quindi più domini possono puntare allo stesso indirizzo IP.

Il vantaggio di questa tecnica è quello di risparmiare molti IP, in quanto è possibile avere centinaia e centinaia di domini sullo stesso indirizzo.

Questa seconda tecnica, secondo me più utilizzata prevede di:

  • creare una cartella in ../httpd/conf.d chiamata virtualhost così siamo più ordinati…
  • abilitare all’interno del file httpd.conf la seguente direttiva riportando l’IP attivo sul server e il path con le configurazioni supplementari che punti alla cartella creata nel passo precedente.

NameVirtualHost 192.168.101.21

Include conf.d/virtualhost/*.conf

  • a questo punto nella cartella ../httpd/conf.d andremo a creare dei file chiamati con il nome del sito e con estensione .conf ( es. www.pippo.it.conf ) con la seguente forma:

<VirtualHost 192.168.101.21>
ServerAdmin pcasarin@libero.it
DocumentRoot /var/www/html/pippo
ServerName www.pippo.it
</VirtualHost>

Ora potremmo lanciare

service httpd reload

le configurazioni date saranno prese e apache non si sarà riavviato!!!

Una risposta

  1. […] VirtualHost Name-based (più domini sullo stesso IP) che abbiamo visto in passato […]

Lascia un commento