Der gesamte Prozess der lokalen Konfiguration des Reverse-Proxys über Nginx

Der gesamte Prozess der lokalen Konfiguration des Reverse-Proxys über Nginx

Vorwort

Nginx ist ein leichtgewichtiger HTTP-Server, der ein ereignisgesteuertes, asynchrones, nicht blockierendes Verarbeitungsframework verwendet, das ihm eine ausgezeichnete IO-Leistung verleiht. Wir verwenden Nginx in den folgenden Szenarien in der täglichen Entwicklung:

  • Nginx als HTTP-Server
  • Cross-Origin-Anfragen
  • Lastenausgleich
  • Trennung von statischen und dynamischen Netzwerkressourcen

Als Frontend konzentrieren wir uns hauptsächlich auf die ersten beiden Szenarien

1. Herunterladen und installieren

Klicken Sie hier, um die Datei herunterzuladen. Nach dem Download entpacken Sie sie. Die entpackten Dateien sind wie folgt:

Entpacken (Doppelklick auf nginx.exe, nach dem Doppelklick blinkt ein schwarzes Popup-Fenster auf)

Suchen Sie das Verzeichnis, in dem nginx entpackt ist, klicken Sie mit der rechten Maustaste, suchen Sie nach „Git Bash“, um es zu öffnen, geben Sie den Befehl „start ./nginx.exe“ ein und drücken Sie die Eingabetaste, um den nginx-Dienst zu starten.

**Überprüfen Sie, ob der Start erfolgreich war: **Geben Sie die URL http://localhost direkt in die Adressleiste des Browsers ein, drücken Sie die Eingabetaste und die folgende Seite wird angezeigt, die anzeigt, dass der Start erfolgreich war

2. Nginx-Konfiguration

Suchen Sie unter nginx nach der Datei conf/nginx.conf und legen Sie die Proxy-bezogenen Informationen fest. Konzentrieren Sie sich dabei auf den Inhalt in Server{}

#Benutzer niemand;
Arbeiterprozesse 1;

#error_log Protokolle/Fehler.log;
#error_log Protokolle/error.log Hinweis;
#error_log Protokolle/error.log-Info;

#pid-Protokolle/nginx.pid;


Ereignisse {
 Arbeiterverbindungen 1024;
}


http {
 mime.types einschließen;
 Standardtyp Anwendung/Oktett-Stream;

 #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
 # '$status $body_bytes_sent "$http_referer" '
 # '"$http_user_agent" "$http_x_forwarded_for"';

 #access_log Protokolle/access.log Haupt;

 sendfile an;
 #tcp_nopush ein;

 #keepalive_timeout 0;
 KeepAlive-Timeout 65;

 #gzip ein;
 Servernamen_Hash_Bucket_Größe 128;
 Server {
 hören Sie 80;
 Servername localhost;
 Standort / {
  Stamm-HTML;
  Index Index.html Index.htm;
 }
 Fehlerseite 500 502 503 504 /50x.html;
 Standort = /50x.html {
  Stamm-HTML;
 }
 }

 Server {
 hören Sie 80;
 Servername test-local.juejin.com;
 # Hier ist der Domänenname der Testumgebung, die Sie als Proxy verwenden möchten, plus -local
 # Wenn Ihre Projekttestumgebung beispielsweise a.test.com ist, können Sie sie auf a-local.test.com festlegen. Natürlich können Sie den Standort beliebig festlegen /{
  add_header 'Zugriffskontrolle-Origin zulassen' '*';
  add_header 'Zugriffskontrolle-Anmeldeinformationen zulassen' 'true';
  add_header 'Zugriffskontrolle-Zulassen-Methoden' 'GET, POST, OPTIONEN';
  add_header 'Access-Control-Allow-Headers' 'DNT, Web-Token, App-Token, Autorisierung, Akzeptieren, Herkunft, Keep-Alive, User-Agent, X-Mx-ReqToken, X-Datentyp, X-Auth-Token, X-Angefordert-mit, Falls-geändert-seit, Cache-Steuerung, Inhaltstyp, Bereich';
  add_header 'Zugriffskontrolle-Header anzeigen' 'Inhaltslänge, Inhaltsbereich';
  # Hier ist 8091 die Portnummer unseres lokal laufenden Projekts. Stellen Sie sie einfach auf die gleiche Nummer wie Ihre lokale Service-Portnummer ein: proxy_pass http://127.0.0.1:8091/;
 }
 }
}

3. Lokale DNS-Konfiguration

**Ändern Sie die lokale Hostdateikonfiguration. **Suchen Sie das Verzeichnis C:\Windows\System32\drivers\etc, öffnen Sie die Hosts-Datei, ändern Sie die Datei und fügen Sie 127.0.0.1 a-local.test.com hinzu.

4. Bedienung

Geben Sie zunächst ./nginx.exe -t ein, um zu prüfen, ob die Nginx-Konfiguration korrekt ist. Die richtige Konfiguration ist wie folgt:

Geben Sie zum Neustart weiterhin nginx -s reload ein (nachdem die Nginx-Konfigurationsdatei geändert wurde, muss Nginx neu gestartet werden, damit die Änderungen wirksam werden).

DNS aktualisieren: ipconfig /flushdns

Geben Sie http://a-local.test.com in Ihren Browser ein und Sie sehen die Codeschnittstelle, die Sie lokal ausführen.

5. Häufig verwendete Nginx-Befehle

  • Hilfebefehl: nginx -h
  • Starten Sie den Nginx-Server: start nginx
  • Pfad der Konfigurationsdatei: /usr/local/nginx/conf/nginx.conf
  • Überprüfen Sie die Konfigurationsdatei: nginx -t
  • Stoppen Sie den Dienst: nginx -s stop
  • Beenden Sie den Dienst (stoppen Sie den Dienst, nachdem alle Anforderungen verarbeitet wurden): nginx -s quit
  • Laden Sie die Konfigurationsdatei neu: nginx -s reload
  • Versionsinformationen anzeigen und nginx -v beenden
  • Beenden Sie alle Nginx-Prozesse killall nginx

6. Domänenübergreifende Anfragen

Da Front-End und Back-End in Projekten mit getrenntem Front-End bzw. Back-End jeweils auf unterschiedlichen Servern bereitgestellt werden, ist das erste Problem, auf das wir stoßen, die Domänenübergreifendkeit. In diesem Szenario kann uns nginx dabei helfen, dieses Problem gut zu lösen.

#Domänenübergreifender Anforderungsserver
Server{
	hör zu 9000;
	Servername 127.0.0.1; # oder auf die lokale IP eingestellt
	Stamm /app/crossDomain/;
	Index Index.html;
	
	Standort /douban/ { #Proxy-Konfiguration für Zugriffsverzeichnis /api hinzufügen rewrite ^/api/(.*)$ /$1 break;
		Proxy-Passwort http://a.test.com;
 }
}

Zusammenfassen

Dies ist das Ende dieses Artikels über die lokale Konfiguration eines Reverse-Proxys über nginx. Weitere relevante Inhalte zur lokalen Konfiguration eines Reverse-Proxys über nginx finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Tutorial: Nginx-Reverse-Proxy-Konfiguration zum Entfernen von Präfixen
  • Zusammenfassung der Fallstricke bei der Verwendung von Nginx als Reverse-Proxy für GRPC
  • Vollständiger Prozessbericht der Nginx-Reverse-Proxy-Konfiguration
  • So implementieren Sie den Nginx-Reverse-Proxy für mehrere Server
  • Implementierung von proxy_pass im Nginx-Reverse-Proxy
  • So halten Sie eine lange Verbindung aufrecht, wenn Sie den Nginx-Reverse-Proxy verwenden
  • Detaillierte Erklärung des Nginx Reverse-Proxy-Beispiels
  • Fallerklärung für den Nginx-Reverse-Proxy zu Go-FastDFS

<<:  Konvertieren von XHTML-CSS-Seiten in Druckerseiten

>>:  Verwenden Sie reines CSS, um einen pulsierenden Loader-Effekt-Quellcode zu erstellen

Artikel empfehlen

Detailliertes Tutorial zur Installation von Anaconda3 auf Ubuntu 18.04

Anaconda bezeichnet eine Open-Source-Python-Distr...

JS realisiert Video-Sperreffekt

Verwenden Sie um dies zu erreichen, die modulare ...

So verwenden Sie den dd-Befehl in Linux, ohne die Festplatte zu zerstören

Egal, ob Sie versuchen, Daten von einem sterbende...

MySQL etabliert eine effiziente Indexbeispielanalyse

Dieser Artikel beschreibt anhand von Beispielen, ...

So verwenden Sie Cron-Jobs, um PHP regelmäßig unter Cpanel auszuführen

Öffnen Sie das cPanel-Verwaltungs-Backend. Unter ...

So legen Sie einen Alias ​​für einen benutzerdefinierten Pfad in Vue fest

So konfigurieren Sie benutzerdefinierte Pfadalias...

11 allgemeine CSS Tipps und Erfahrungssammlung

1. Wie entferne ich den leeren Bereich von einigen...

Vuex implementiert einen einfachen Einkaufswagen

In diesem Artikelbeispiel wird der spezifische Co...

Manuelle Implementierung des bidirektionalen Datenbindungsprinzips von Vue2.0

In einem Satz: Datenentführung (Object.defineProp...

MySQL GROUP_CONCAT-Einschränkungslösung

Wirkung: Die Funktion GROUP_CONCAT kann einen Fel...

So stellen Sie die LNMP-Architektur im Docker bereit

Umweltanforderungen: IP Hostname 192.168.1.1 Knot...