Configurare più VirtualHost Sullo Stesso IP con Apache2

Sullo stesso computer è possibile ospitare diversi siti fra loro indipendenti.
Apache prevede diversi metodi per per farlo:
– User Home (tutte le home vengono visualizzate tramite la direttiva UserDir)
– Istanze multiple di Apache (Più Apache, anche di versioni diverse, installati e in esecuzione sulla stessa macchina)
– VirtualHost Ip-based (Più domini virtuali su IP diversi)
– VirtualHost Name-based (Più domini virtuali sullo stesso IP)


Il metodo più utilizzato per erogare più servizi con Apache è quello di creare dei VirtualHost IP o name based.
Ovvero tramite sullo stesso server è possibile creare virtualmente tanti host quanti sono i servizi (siti) che devono essere erogati.


virtual


Name-Based Virtual Hosting

Con questa tecnica possiamo avere più domini condivisi sullo stesso IP. Apache esaminando l’header “Host:” (es: Host: www.dominio.com) inviato dal client interpreta di conseguenza la richiesta, ed eroga il servizio relativamente all’Host richiesto. Questa procedura è valida solo se il client supporta il protocollo HTTP/1.1.

per poter implementare questo genere di servizio dobbiamo fare 2 cose principali:


  1. Andare a dichiarare i virtual Host dentro il file di configurazione di apache
  2. Nel caso di domini locali andare a mappare i domini con l’ip relativo dentro il file /etc/hosts


Dichiarare i Virtual Host in apache sullo stesso IP

Andiamo ad aprire con un editor il file /etc/apache2/sites-enabled, al suo interno dovrebbe esserci un file default, aprirlo per la modifica. adesso qui possiamo fare 2 cose, o creare + file per ogni host, o averli tutti mappati in default, io li tengo tutti in default, almeno so che sono tutti li, le cose principali da fare sono:


  • NameVirtualHost 127.0.0.1 dichiaro per tutti i vitual host l’ip della macchina
  • <VitualHost 127.0.0.1>ServerName test1.localhost….</VirtualHost>
  • <VitualHost 127.0.0.1>ServerName test2.localhost….</VirtualHost>

Ovviamente tra i tag virtualhost dovrete inserire la documentRoot,directory e tutto ciò che volete, cambiano solo le intestazioni come l’esempio.


Mappare il nome dei VirtualHost

A questo punto se non abbiamo un server dns nostro, dove andare ad inserire questi nuovi FLAG che individuano i virtual host dobbiamo mapparli direttamente dentro il file /etc/hosts, andiamo ad editare questo file e inseriamoci:


  • 127.0.0.1 test1.localhost
  • 127.0.0.1 test2.localhost
  • ………

In questo modo la macchina sa come comportarsi quando andiamo a scrivere nell’ url http://test1.localhost.Mi sembra di essere stato chiaro, buon divertimento

pdf

Related posts:

  1. Compilare Apache2 e php 5.3 Una delle migliori cose è sicuramente scaricare i sorgenti...

Articoli correlati elaborati dal plugin Yet Another Related Posts.

Tags: , ,

Scritto da Santarelli Luca venerdì, 20th febbraio , 2009 16:50 Letture:

    « Come Creare Query con Array associativi in Java  |  File Upload Con le Servlet »

    5 Responses to “Configurare più VirtualHost Sullo Stesso IP con Apache2”

    1. vincy6 Says:
      settembre 26th, 2009 at 13:31

      grazie

    2. Teo Says:
      dicembre 17th, 2009 at 15:28

      Ciao, ho un problema con questo tipo di configurazione. Anche seguendo questa guida, non riesco a venirne a capo. Io installo tutto il server LAMP in modo corretto, infatti apache e phpadmin mi rispondono alla grande. Al momento della creazione di un dominio sotto la cartella /var/www/miodominio.it, non vado da nessuna parte…Ho seguito quello che hai scritto, ma mi servono più info per riuscire in questa impresa che mi perseguita da 4 giorni. Mi dai una mano ? Grazie. teo.

    3. admin Says:
      gennaio 8th, 2010 at 01:27

      Mi sembra di averti risposto via mail, fammi sapere se non è cosi, saluti

    4. lele Says:
      gennaio 11th, 2010 at 12:47

      Ciao e congratulazione per l’articolo, ma volevo sapere cosa era che non andava con xaamp e una installazione in locale…
      nel senso io ho fatto partire xaamp e se lo faccio partire da locale tutto va bene, ma se lo faccio partire con il virrtual host i video non mi partono… dice accesso negato.. sareste indicarmi la soluzione?!?!?
      grazie ancora
      manu

    5. admin Says:
      febbraio 3rd, 2010 at 00:43

      Come prima risposta mi viene da chiederti se hai creato le cartelle dove puntano i virtual host, poi siccome xampp non lo uso informati se è comilato o sono presenti le librerie per il virtual-name di apache

    Leave a Reply