J'essaie d'héberger deux sites Web utilisant Apache à partir du même serveur Ubuntu. J'ai une adresse IP, et j'ai seulement un domaine (qui résout à l'adresse IP). Donc, je veux des demandes au nom de domaine pour donner un site Web, et demande à l'adresse IP pour donner l'autre.Servir deux sites Web avec Apache avec un seul nom de domaine et une seule adresse IP
J'ai des liens symboliques dans/etc/apache2/sites-enabled vers deux fichiers, pointant vers la config pour mes deux sites.
One contient:
<VirtualHost 1.2.3.4:80>
ServerName 1.2.3.4
stuff
</VirtualHost>
tandis que l'autre contient
<VirtualHost domain.net:80>
ServerName domain.net
stuff
</VirtualHost>
Cependant, quand je lance Apache, je reçois le message suivant:
[warn] VirtualHost 1.2.3.4:80 overlaps with VirtualHost domain.net:80, the first has precedence, perhaps you need a NameVirtualHost directive
et quand je pointe mon navigateur à soit domain.net ou 1.2.3.4 Je reçois le site que je veux associé à l'adresse IP.
Si je supprime un lien symbolique, le fait de pointer un navigateur sur le nom de domaine ou l'adresse IP indique le seul site Web activé. (Comme vous voudriez l'espérer.)
Si je comprends bien, les deux fichiers de configuration dans les sites activés sont chargés en même temps, et celui qui contient l'adresse IP l'emporte sur celui qui contient le nom de domaine. L'avertissement suggère de regarder la directive NameVirtualHost, mais toute l'aide que je peux trouver en ligne se réfère à des cas où vous avez deux noms de domaine pointant vers la même adresse IP.
Comme toujours, et de l'aide ou des conseils seraient grandement appréciés.
(Pour ce que ça vaut la peine, les sites sont à la fois des applications Rails, et je suis déploiement à l'aide des passagers, mais je ne pense pas que ce soit important.)
Pour votre information, des questions comme celles-ci sont mieux servis sur serverfault.com –