Nginx reverse proxy

Cette article fait suite au précédent.

Nous sommes dans un cas particulier.
Nous avons des IPs (sites) qui sont forward sur un autre serveur ou sont réellement hébergés les site.
L’ip forwarding fonctionne à merveille si on reste juste sur ce principe.

Hors notre pool d’ip sert aussi pour notre proxy cache et la c’est la catastrophe car au lieu d’avoir du round robin sur notre squid, le serveur forward sa propre IP.
Ce qui tue complètement l’utilité du round robin.

J’ai donc préféré passer par nginx en reverse proxy plutôt que passer par des règles IP table.
L’idée étant de catch sur nginx toute les requêtes du port 80 et de les forward à l’autre serveur, tout en gardant mon proxy avec sa configuration initiale.

server {
listen 80 default_server;
server_name _;

location / {
resolver XXX.XXX.XXX.XXX ipv6=off;
proxy_set_header Host $host;
proxy_pass http://YYY.YYY.YYY.YYY;
proxy_redirect off;
}
}

XXX.XXX.XXX.XXX = le serveur DNS qui doit résoudre le domaine
YYY.YYY.YYY.YYY = le serveur qui héberge réellement les sites

Il ne faut pas oublier de changer la conf de bind pour accepter toute les IP pour la résolution ou les fixer.

Dans le /etc/bind/named.conf.options

listen-on { any; };

 

Publié dans linux, Nginx, Server, squid | Laisser un commentaire

Laisser un commentaire