La direttiva VirtualHost accetta sia i canonical name che gli indirizzi IP, ma per evitare problemi di sicurezza e di performance è bene utilizzare sempre gli IP.
Anche se è proprio la direttiva VirtualHost a configurare a quale indirizzo IP o nome dovrà rispondere il Virtualhost è consigliato mettere sempre l'IP e la porta a cui deve rispondere, sarà proprio la direttiva ServerName che eviterà al server Apache di lanciare inutili query al DNS per scoprire la corrispondenza IP e nome VirtualHost.
virtualhost in rete privata
OK, sembra che sia saltato un pezzo a causa dei tag, posto la configurazione del Virtual Host senza il tag:
...VirtualHost 10.100.100.4:8001...
ServerAdmin root@pepe-deb
DocumentRoot /var/www/prova
ServerName prova.local
ServerAlias prova1.local
ErrorLog /var/log/apache/prova_error.log
.../VirtualHost...
virtualhost in rete privata
Ho configurato Apache 1.3 su una macchina debian facente parte di una piccola Lan formata da due Apple e appunto la Linux Debian.
L'indirizzo di rete della macchina è 10.100.100.4.
Ho quindi configurato alcuni NameVirtualHost in questo modo:
NameVirtualHost 10.100.100.4:8001
[…]
ServerAdmin root@pepe-deb
DocumentRoot /var/www/prova
ServerName prova.local
ServerAlias prova1.local
ErrorLog /var/log/apache/prova_error.log
Ok Apache funziona e vede tutti i virtualhost rispondendo agli indirizzi tipo http://10.100.100.4:8001 etc.
Tutavia ho due problemi:
1)Non vedo più l'indirizzo http://10.100.100.4(:80) ne http://pepe-deb (il nome della macchina) ed in locale http://127.0.0.1 e relativi nomi scritti nel file hosts
2)il secondo è che vorrei che in remoto, e magari anche in locale, il server rispondesse a http://prova.local o indirizzi simili, indicati come ServerName nel VirtualHost.
Ho dato un'occhiata a vari HowTo per BIND, e devo dire che è un "tantino" complicato configurare il server DNS per un neofita come me…
Mi chiedevo se ci fosse un'altra, o se come pensavo Apache dovrebbe rispondere al NameServer.
Grazie
Virtualhost su una diversa macchina
RispondiVirtual Host e dns
Grazie dell'intervento, ma causa problemi tecnici e di scripting ho dovuto ricorrere ad una differente soluzione... via software che smista direttamente le chiamata ai diversi web server.
Utilizzando quello di apache mi dava dei problemi soprattuto sulle padine asp. Grazie ancora
Natting e rewriting
Allora, se il server IIS è interno e deve essere raggiunbili da fuori, devi trovare il modo di renderlo tale: o via nat o via proxy.
Una volta che riesci a presentarlo pubblicamente con un dato nome o indirizzo, il redirezionare il virtual host è banale (un redirect, un rewrite o a questo punto direttamente la voce nel dns che punta direttamente al IIS).
Mi sembra di capire però che tu voglia usare Apache e che lui abbia già un piede fuori e uno dentro.
In questo caso usa le funzioni di proxy di Apache, in modalità di http accelleration (i client cheidono a lui, lui chiede a IIS, e lui risponde ai client)
Virtualhost su una diversa macchina
E' possibile utilizzare la direttiva Virtual Host, im modo che come risposta si venga reindirizzati su un altra macchina? Mi spiego meglio io hoil server web pubblico conindirizzo interno della lan 192.168.2.2, e tutti siti e virtual host che ci sono funzionano correttamente, il problema sorge quando voglio indirizzare un virtual host tipo cliente.miosito.it verso un web server interno alla lan con indirizzo 192.168.2.3 e nello specifico su questa macchina vi è IIS 6.
Ho provato utilizzando la direttiva di redirect solo che mi risolve anche all'esterno l'ip della lan interna....
Qualche idea in proposito?!?
Grazie