So konfigurieren Sie Nginx, um den Datenverkehr basierend auf dem letzten Segment der Anforderungs-IP aufzuteilen

So konfigurieren Sie Nginx, um den Datenverkehr basierend auf dem letzten Segment der Anforderungs-IP aufzuteilen

Es handelt sich hauptsächlich um den Konfigurationssprung des if-Urteils im Standortparameter. Die Umleitung kann die Belastung und den Druck des Servers verringern. Dies ist eine sehr gängige Serverbereitstellungsarchitektur.
Springen Sie entsprechend dem Bereich des letzten Segments der IP

#Domänenname, IP, Port und andere Informationen ändern Sie bitte selbst upstream huaji-01.com {
 Server 192.168.1.100:8080;
}

Upstream huaji-02.com {
 Server 192.168.1.200:8080;
}

Server {

 hören Sie 80;
 Servername www.huaji.com;

 Standort /
 {
  wenn ( $remote_addr ~* ^(.*)\.(.*)\.(.*)\.[1,125]$) {
    Proxy-Passwort http://huaji-01.com;
    brechen;
  }

  Proxy-Passwort http://huaji-02.com;
 }

}

Das obige Beispiel leitet Anfragen mit IP-Adressen, die auf 1-125 enden, an huaji-01.com weiter, und andere an huaji-02.com. Sie können den regulären Ausdruck auch ändern, zum Beispiel

Regel: $remote_addr ~* ^(.*)\.(.*)\.(.*)\.*[0268]$ Gerade IPs, die mit 0268 enden, springen zu huaji-01.com, und andere springen zum zweiten Domänennamen.

Regel: $remote_addr ~* ^(112)\.(.*)\.(.*)\.(.*)$ IPs, die mit 112 beginnen, werden zum angegebenen Domänennamen umgeleitet;

Regel: $http_x_forwarded_for ~* ^(112)\.(.*)\.(.*)\.(.*)$ Leitet den Verkehr basierend auf dem Weiterleitungsadresssegment um und leitet den Verkehr, der mit 112 beginnt, an den angegebenen Domänennamen um.

Die Bedeutung der bedingten Beurteilung durch die if-Anweisung:

Übereinstimmung mit regulären Ausdrücken, wobei:

~ für Groß- und Kleinschreibung

~* ist eine Groß-/Kleinschreibung ignorierende Übereinstimmung.

Bei !~ und !~* wird zwischen Groß- und Kleinschreibung unterschieden, bei anderen Übereinstimmungen wird zwischen Groß- und Kleinschreibung unterschieden.

Datei- und Verzeichnisübereinstimmung, wobei:

Mit -f und !-f wird ermittelt, ob eine Datei existiert

Mit -d und !-d wird ermittelt, ob ein Verzeichnis existiert

-e und !-e werden verwendet, um zu bestimmen, ob eine Datei oder ein Verzeichnis existiert

-x und !-x werden verwendet, um zu bestimmen, ob die Datei ausführbar ist

Der letzte Parameter der Rewrite-Direktive ist das Flag-Tag, das Folgendes enthält:

last entspricht dem Flag [L] in Apache, was „umschreiben“ bedeutet.

break Nachdem diese Regel abgeglichen wurde, wird der Abgleich beendet und die folgenden Regeln werden nicht mehr abgeglichen.

Die Umleitung gibt eine temporäre 302-Umleitung zurück und die Browseradresse zeigt nach dem Sprung die URL-Adresse an.

permanent gibt eine permanente 301-Umleitung zurück und die Browseradresse zeigt nach dem Sprung die URL-Adresse an.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Beispielcode zur Implementierung der IP-Zugriffsumleitung durch den Nginx-Reverseproxy

<<:  Vue verbessert die Seitenantwortgeschwindigkeit durch Lazy Loading

>>:  MySQL-Paket für Abfrage ist zu groß – Problem und Lösung

Artikel empfehlen

Detaillierte Erklärung des Sticky Position-Attributs in CSS

Beim Entwickeln mobiler Apps stoßen Sie häufig au...

Sublime/vscode – schnelle Implementierung zur Generierung von HTML-Code

Inhaltsverzeichnis Grundlegende HTML-Struktur Gen...

JavaScript zum Implementieren eines Dropdown-Listenauswahlfelds

In diesem Artikelbeispiel wird der spezifische Ja...

Front-End-Statusverwaltung (Teil 1)

Inhaltsverzeichnis 1. Was ist Front-End-Statusver...

Warum ist der MySQL-Autoinkrement-Primärschlüssel nicht kontinuierlich?

Inhaltsverzeichnis 1. Einleitung 2. Beschreibung ...

9 Möglichkeiten zum Ein- und Ausblenden von CSS-Elementen

Bei der Erstellung von Webseiten ist das Anzeigen...

Beste Tools zum Erstellen und Bearbeiten von Screenshots unter Linux

Als ich mein primäres Betriebssystem von Windows ...

MySQL verwendet UNIQUE, um das Einfügen nicht doppelter Daten zu implementieren

SQL UNIQUE-Einschränkung Die UNIQUE-Einschränkung...

Fünf Richtlinien zum Schreiben von wartungsfreundlichem CSS-Code

1. Fügen Sie am Anfang des Stylesheets einen Komme...

HTML-Grundlagen - CSS-Stylesheets, Style-Attribute, Format- und Layoutdetails

1. Position : fest Gesperrte Position (relativ zu...