Ip-Based  virtual Hosting

Il vantaggio del virtual hosting basato su IP è che ogni virtual host corrisponde ad un IP e non ha bisogno di essere identificato con un nome, inoltre viene supportato anche dai vecchi browser che non supportano il protocollo HTTP/1.1.

Lo svantaggio è che per ogni dominio avremo bisogno di un differente IP.
A livello di configurazione bisogna specificare su quali indirizzi e quali porte il server Apache deve rimanere in ascolto.
La direttiva per identificare l'indirizzo IP è BindAddress e la porta Port:
BindAddress *  Rimane in ascolto su tutte le interfacce
Port 80 alla porta 80

Una possibile altrenativa è la direttiva Listen che permette di specificare porta ed indirizzo IP sulla stessa linea di configurazione:
Listen 192.168.208.3:80  Apache binda la porta 80 all'ip 192.168.208.3
oppure
BindAddress 192.168.208.4  Viene bindato l'indirizzo 192.268.208.4
Listen 80
Listen 443 sia  alla porta 80 che 443

La direttiva che definisce il VirtualHost nel file di configurazione è VirtualHost
<VirtualHost IP:PORT>
[...]
</VirtualHost>


I primary Object utilizzati per definire le proprietà di un VirtualHost sono:
ServerAdmin La e-mail dell'amministratore del serverweb
ServerName Il canonical name per il virtualhost
DocumentRoot Path dove risiedono file HTML, immagini e contenuti del sito da rendere disponibili
ErrorLog Il log degli errori
CustomLog Il log sui file trasferiti

Esempio:
<VirtualHost 192.168.208.3:80 >
    ServerAdmin [email protected]
    DocumentRoot /usr/local/apache/htdocs/sick/
    ServerName sick-internals
    ErrorLog logs/sick-internals-error_log
    CustomLog logs/sick-internals common
<Directory "/usr/local/apache/htdocs/sick/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
</VirtualHost>


Ognuna di queste direttive tranne ServerName verrebbe ereditata dalla configurazione principale, ma si preferisce per ovvi motivi (non mischiare i log, avere piu' ServerAdmin etc...) definire nuovi parametri per ogni Virtualhost.

Privacy Policy