Accéder au contenu.
Menu Sympa

linux-31 - Re: deux serveurs http sur le même réseau

Objet : Discussions sur le logiciel libre

Archives de la liste

Re: deux serveurs http sur le même réseau


Chronologique Discussions 
  • From: Albert ARIBAUD <albert AT aribaud.net>
  • To: linux-31 AT culte.org
  • Subject: Re: deux serveurs http sur le même réseau
  • Date: Fri, 01 Oct 2021 20:12:54 +0200

(je réponds à tes deux dernières réponses d'un coup)

Le vendredi 01 octobre 2021 à 19:29 +0200, jdanield a écrit :
> Le 01/10/2021 à 18:50, Albert ARIBAUD (via linux-31 Mailing List) a
> écrit :
>
> > Si l'un ou l'autre de ces serveurs est un Apache ou un Nginx, il y
> > a
> > pléthore d'exemples de configuration sous la désignation "virtual
> > host".
> >
>
> ca je connais, mais donc il faut qu'un des deux serveurs redirige
> vers l'autre (et donc qu'il fonctionne en même temps que l'autre, en
> permanence :-().

D'un autre côté, ta prémisse initiale c'est que tu veux pouvoir accéder
à deux serveurs, donc a priori les deux fonctionnent en permanence.


> supposons qu'on choisisse 8080 comme port pour un des deux serveurs,
> il faut rajouter ça à toutes les adresses, je suppose

C'est selon le serveur, plus exactement selon le code applicatif (PHP,
Python, whatever).

Si ce code est mal fait et suppose qu'il est servi sur port 80, alors
le visiteur sera obligé de rectifier manuellement chaque lien pour le
visiter.

Si le code est pas trop mal fait, il y a un réglage pour lui indiquer
son "URL de base" où on peut spécifier le port, le code se chargera de
préfixer chaque lien qu'il produit avec cette URL de base, et le
visiteur n'aura rien à faire.

Si le code est *très bien fait*, il utilisera l'information passée par
le serveur Web (Apache ou Nginx) pour construire dynamiquement ses
liens (ou les fera relatifs proprement) et sera donc capable de
fonctionner sans adaptation quel que soit le nom de domaine ou le port
via lequel on le sert.

> je crains qu'on ne puisse pas donner le port à partir du nom de
> domaine (dans un fichier de zone?)

Le fichier de zone, c'est du DNS, ça n'indique en effet pas de port
mais c'est pas grave parce que ton problème n'a rien à voir avec le
DNS. :)

Cet exemple devrait clarifier :

- supposons que ton adresse publique est 1.2.3.4 et que tu veux servir
sur le port public 80 les deux domaines charybde.invalid et
scylla.invalid.

- tu crées une entrée, disons "www", dans chaque zone DNS, de sorte que
"www.charybde.invalid" et "www.scylla.invalid" résolvent l'un et
l'autre vers 1.2.3.4.

- sur ta box, tu diriges le port public 80 de 1.2.3.4 vers le port 80
de 192.168.0.100 qui est le serveur pour "www.scylla.invalid". À partir
de là, si on visite http://www.scylla.invalid (sous-entendu : port 80)
on va en HTTP sur le port 80 de 192.168.0.100...

- ... et si tu visites http://www.charybde.invalid (sous-entendu : port
80), ça ira aussi en HTTP sur le port 80 de 192.168.0.100

- maintenant, dans le serveur (Apache ou Nginx) de 192.168.0.100, à
côté de la configuration "par défaut", tu crées une autre configuration
où le nom du serveur virtuel est "www.charybde.invalid", et qui fait du
proxy vers http://192.168.0.200 (sous-entendu : port 80) qui est le
serveur qui est censé répondre pour charybde.

-du coup, maintenant, quand on consulte http://www.charybde.invalid/a/b
ça arrive à la box qui le passe à 192.168.0.100 (port 80), où le
serveur, voyant que c'est pour www.charybde.invalid, utilise la conf
que tu as ajouté. Il consulte donc http://192.168.0.200/a/b et récupère
une réponse qu'il repasse au visiteur : il a fait proxy.

(tout ça sans jamais avoir mentionné un port quelconque dans la zone
DNS)

> merci
> jdd
> --

Amicalement,
Albert.




Archives gérées par MHonArc 2.6.19+.

Haut de le page