So konfigurieren Sie die CDN-Planung mit dem Modul Nginx_geo

So konfigurieren Sie die CDN-Planung mit dem Modul Nginx_geo

Einführung in das Geo-Modul von Nginx

Die Geo-Direktive wird durch das Modul ngx_http_geo_module bereitgestellt. Standardmäßig lädt nginx dieses Modul, sofern nicht --without-http_geo_module angegeben ist.

Mit dem Modul ngx_http_geo_module können Variablen erstellt werden, deren Werte von der Client-IP-Adresse abhängen. So verwenden Sie es:

Syntax der Geo-Direktive: geo [$address] $variable { ... }
Standardwert: -
Konfigurationsabschnitt: http

Definiert, wie die IP-Adresse des Clients aus der angegebenen Variable abgerufen wird. Standardmäßig erhält nginx die Client-IP-Adresse aus der Variable $remote_addr, sie kann jedoch auch aus anderen Variablen bezogen werden.

Fügen Sie der Datei /usr/local/nginx/conf/nginx.conf die folgende Konfiguration hinzu: geo $geo {
    Bereiche; #Verwenden Sie die Adresse in Form von Adresssegmenten, dieser Parameter muss an erster Stelle stehen. Standard-DN;
    ip_geo.conf einschließen;
  }

    Upstream wuhan.server {
      Server 192.168.155.98:8081;
    }

    Upstream shanghai.server {
      Server 192.168.155.98:8082;
    }

    Upstream shenzhen.server {
      Server 192.168.155.98:8083;
    }

    Upstream-DN.Server {
      Server 192.168.155.98:8084;
    }

 Server {
    hören Sie 80;
    Servername 192.168.155.98 jiaoyu.media.cloudp.cc;
      Stamm-HTML;
      Index Index.html Index.htm;
    Standort ~* \.xml$ {
      Stammverzeichnis /Daten/Video;
    }
    Standort / {
      Proxy_Redirect aus;
      Proxy_Set_Header Host $host;
      Proxy_Set_Header X-Real-IP $Remote_Addr;
      proxy_set_header X-Weitergeleitet-Für 
      $proxy_add_x_weitergeleitet_für;
      Proxy-Passwort http://$geo.server$request_uri;
    }
  }

  Server {
    hören Sie 8081;
    Servername 192.168.155.98;
    Standort / {
      neu schreiben ^ $scheme://192.168.155.106$request_uri? permanent;
    }
  }

  Server {
    hören Sie 8082;
    Servername 192.168.155.98;
    Standort / {
        neu schreiben ^ $scheme://192.168.155.107$request_uri? permanent;
    }
  }

Server {
    hören Sie 8083;
    Servername 192.168.155.98;
    Standort / {
        neu schreiben ^ $scheme://192.168.155.109$request_uri? permanent;
    }
  }

  Server {
    hören Sie 8084;
    Servername 192.168.155.98;
    Standort / {
        neu schreiben ^ $scheme://jiaoyu.dn.cloudp.cc$request_uri? permanent;
    }
}

Fügen Sie die Datei ip_geo.conf unter /usr/local/nginx/conf/ hinzu, um den IP-Bereich aufzuteilen. Beachten Sie, dass es beim Aufteilen zu keiner IP-Überlappung kommen darf, da sonst ein „Überlappungs“-Fehler gemeldet wird.

vim /usr/local/nginx/conf/ip_geo.conf

192.168.128.6-192.168.128.10 Wuhan;
192.168.128.11–192.168.128.15 Shanghai;
192.168.128.16-192.168.128.20 Shenzhen;

Sie können IP-Adressen auch in der Form 10.2.0.0/16 wuhan segmentieren, sodass Sie die Bereichsdirektive nicht verwenden müssen, um sie in nginx.conf zu definieren.

Die obige Konfigurationsmethode zur Verwendung des Moduls Nginx_geo zur Implementierung der CDN-Planung ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung des Geomoduls in Nginx und Beispiele für die Verwendung zum Konfigurieren des Lastenausgleichs
  • Nginx-GeoIP-Modul zur Erzielung eines regionalen Lastausgleichs
  • Detaillierte Erläuterung der Konfiguration und Verwendung des Kartenmoduls im Nginx-Server

<<:  Zusammenfassung des in JS implementierten Minesweeping-Projekts

>>:  Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.23

Artikel empfehlen

Implementierung der kontinuierlichen Integration von Jenkins+Docker

Inhaltsverzeichnis 1. Einführung in Jenkins 2. Je...

img usemap Attribut China Karte Link

HTML-img-Tag: definiert ein Bild, das in eine Webs...

Detaillierte Erläuterung der Docker Swarm-Dienstorchestrierungsbefehle

1. Einleitung Docker verfügt über ein Orchestrier...

Ein Artikel, der Ihnen hilft, mehr über JavaScript-Arrays zu erfahren

Inhaltsverzeichnis 1. Die Rolle des Arrays: 2. De...

Vue+video.js implementiert Video-Wiedergabelisten

In diesem Artikel wird der spezifische Code von v...

Node+Socket realisiert einfache Chatroom-Funktion

In diesem Artikel wird der spezifische Code von N...

6 Möglichkeiten zur eleganten Handhabung von Objekten in JavaScript

Inhaltsverzeichnis Vorwort 1. Objekt.freeze() 2. ...