Vorwort Ich habe vor kurzem eine kleine Demo geschrieben. Da ich die Online-Daten einer großen Fabrik verwendete, wies die Schnittstelle domänenübergreifende Einschränkungen auf. Daher verwendete ich einen Nginx-Proxy, um diese Probleme zu lösen. 1. Konfigurationsinformationen zu nginx.conf Da nginx.conf viele Konfigurationsinformationen enthält, konzentriert sich dieser Artikel nur auf die Einstellungen von Axios und statischen Ressourcenanforderungen und weist auch auf einige allgemeine Konfigurationselemente hin. Die spezifischen Einstellungen sind wie folgt: # Richten Sie den HTTP-Server ein und verwenden Sie seine Reverse-Proxy-Funktion, um die Lastverteilung zu unterstützen http { #Verbindungs-Timeout keepalive_timeout 120; #gzip-Komprimierungsschalter und zugehörige Konfiguration gzip ein; gzip_min_länge 1k; gzip_puffer 4 32k; gzip_http_version 1.1; gzip_comp_level 2; gzip_types Text/einfache Anwendung/x-Javascript-Text/CSS-Anwendung/Xml; gzip_vary ein; gzip_disable "MSIE [1-6]."; #Stellen Sie die aktuelle Serverliste upstream zp_server{ ein Server 127.0.0.1:8089; } #HTTP-Server { #Listen-Port 80 #Definieren Sie den Dienstnamen server_name localthost; #Homepageindex index.html #Zeigen Sie auf das Stammverzeichnis des Projekts D:\project\src\main\webapp; #Kodierungsformat Zeichensatz utf-8; #Proxy-Pfad (an Upstream gebunden), legen Sie den zugeordneten Pfad nach dem Standortstandort / { fest #Proxy-Konfigurationsparameter proxy_connect_timeout 180; Proxy_Sendezeitüberschreitung 180; Proxy_Lese_Timeout 180; Proxy_Set_Header Host $host; proxy_set_header X-Forwarder-Für $remote_addr; Proxy-Passwort http://zp_server/; #Domänenübergreifende Einstellungen add_header 'Access-Control-Allow-Origin' '*' immer; add_header 'Zugriffskontrolle-Anmeldeinformationen zulassen' 'true'; add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' immer; } #Konfigurieren Sie statische Ressourcen, um das Problem zu lösen, dass JS-CSS-Dateien nicht geladen und aufgerufen werden können. Beachten Sie, dass am Ende kein / stehen sollte. Standort ~ .*\.(js|css|jpg|png)$ { Proxy-Passwort http://zp_server; } } } 2. Das Schrägstrichproblem von proxy_pass Die offizielle Website von Nginx unterteilt proxy_pass in zwei Typen:
2.1 Für Methoden ohne URI Bei Methoden ohne URI behält Nginx den Pfadteil des Speicherorts bei, zum Beispiel: Standort /api1/ { Proxy-Passwort http://localhost:8080; } Beim Zugriff auf http://localhost/api1/xxx erfolgt eine Weiterleitung an http://localhost:8080/api1/xxx. 2.2 Für die URI-Methode Für URI-Methoden verwendet nginx eine Ersetzungsmethode wie „Alias“, um die URL zu ersetzen. Dieser Ersatz ist nur ein wörtlicher Ersatz, zum Beispiel: Standort /api2/ { Proxy-Passwort http://localhost:8080/; } Beim Zugriff auf http://localhost/api2/xxx wird http://localhost/api2/ (beachten Sie das letzte /) durch http://localhost:8080/ ersetzt und anschließend das verbleibende xxx hinzugefügt, sodass es zu http://localhost:8080/xxx wird. 2.3 Zusammenfassung Server { hören Sie 80; Servername localhost; Standort /api1/ { Proxy-Passwort http://localhost:8080; } # http://localhost/api1/xxx -> http://localhost:8080/api1/xxx Standort /api2/ { Proxy-Passwort http://localhost:8080/; } # http://localhost/api2/xxx -> http://localhost:8080/xxx Standort /api3 { Proxy-Passwort http://localhost:8080; } # http://localhost/api3/xxx -> http://localhost:8080/api3/xxx Standort /api4 { Proxy-Passwort http://localhost:8080/; } # http://localhost/api4/xxx -> http://localhost:8080//xxx, achten Sie hier bitte auf die doppelten Schrägstriche und analysieren Sie diese sorgfältig. Standort /api5/ { Proxy-Passwort http://localhost:8080/haha; } # http://localhost/api5/xxx -> http://localhost:8080/hahaxxx. Bitte beachten Sie, dass zwischen haha und xxx kein Schrägstrich steht. Lassen Sie uns den Grund analysieren. Standort /api6/ { Proxy-Passwort http://localhost:8080/haha/; } # http://localhost/api6/xxx -> http://localhost:8080/haha/xxx Standort /api7 { Proxy-Passwort http://localhost:8080/haha; } # http://localhost/api7/xxx -> http://localhost:8080/haha/xxx Standort /api8 { Proxy-Passwort http://localhost:8080/haha/; } # http://localhost/api8/xxx -> http://localhost:8080/haha//xxx, bitte beachten Sie hier die doppelten Schrägstriche. } Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Tomcat-Komponenten veranschaulichen die architektonische Entwicklung eines Webservers
>>: So löschen Sie Datensätze in MySQL automatisch vor einer bestimmten Zeit
Frage Frage 1: Wie kann der Leistungsverlust beho...
Es gibt zwei Arten von geplanten Tasks im Linux-S...
Inhaltsverzeichnis Vue3-Kapselungsnachrichten-Ein...
Inhaltsverzeichnis Installieren Komponenten impor...
Zunächst: Was ist ein Box-Collapse? Elemente, die...
MongoDB-Installationsprozess und Problemaufzeichn...
Erstellen einer Testtabelle -- ------------------...
*Seite erstellen: zwei Eingabefelder und ein Butt...
Wir haben möglicherweise eine Frage: Nachdem wir ...
Vorwort Hallo zusammen, hier ist der CSS-Assisten...
So aktualisieren Sie Iframe 1. Zum Aktualisieren k...
Mögliche Lösungen 1. Math.random generiert Zufall...
Reguläre Ausdrücke werden häufig verwendet, um Te...
Was ist Volumen? „Volume“ bedeutet auf Englisch K...
Teil 1 Übersicht über die SSH-Portweiterleitung H...