Les exigences sont les suivantes :
Il existe plusieurs serveurs sous le nom de domaine. Nous le testons maintenant pour une certaine région. Laissez les utilisateurs IP d'une certaine région accéder uniquement à un certain serveur. ce n'est pas un problème, mettez-les tous à jour ; s'il y a un problème, l'impact sera moindre et le problème sera découvert et résolu à temps
Solution :
Utilisez le module nginx pour configurer les règles de correspondance sur le devant ; -fin de la machine de transfert d'équilibrage de charge ;
configuration nginx vhost, le segment d'emplacement sous le nom de domaine, ajoutez un morceau de code
Si $remote_addr correspond à l'adresse IP, transférez-le à abc_test_server ;
server { listen 80; server_name abc.com.cn; access_log /dev/null; error_log /data/logs/error.log; location / { proxy_set_header host $host; proxy_set_header x-real-ip $remote_addr; proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; if ($remote_addr ~ "202.96.134.100") { proxy_pass http://abc_test_server; break; } proxy_pass http://abc_server; } }
La configuration d'équilibrage de charge doit également ajoutez un morceau de code
#abc_test only upstream abc_test_server { server 192.168.20.10:80; } #abc.com.cn upstream abc_server { server 192.168.20.11:80; server 192.168.20.12:80; server 192.168.20.13:80; }
L'IP définie sera directement distribuée au serveur back-end 192.168.20.10 pour test.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!