Die Anforderungen sind wie folgt:
Es gibt mehrere Server unter dem Domainnamen. Jetzt testen wir, ob IP-Benutzer in einer bestimmten Region nur auf einen bestimmten Server zugreifen können Ist kein Problem, aktualisieren Sie sie alle. Wenn es ein Problem gibt, wird die Auswirkung geringer sein und das Problem wird rechtzeitig erkannt und gelöst -End-Load-Balancing-Weiterleitungsmaschine;
nginx-Konfiguration vhost, das Standortsegment unter dem Domänennamen, Fügen Sie einen Code hinzuWenn $remote_addr mit der IP übereinstimmt, leiten Sie es an abc_test_server weiter;
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; } }
Die Lastausgleichskonfiguration muss ebenfalls erfolgen Fügen Sie einen Code hinzu
#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; }
Die eingestellte IP wird zum Testen direkt an den Back-End-Server 192.168.20.10 verteilt.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Nginx-Frontend-Verteilung basierend auf $remote_addr. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!