Dieser Artikel testet, ob die Standortübereinstimmung mit 1. Grundlegende Konfiguration des Nginx-Standorts1.1 Nginx-KonfigurationsdateiUpstream-Test1 { Server 127.0.0.1:8000; } Upstream-Test2 { Server 127.0.0.1:8000; } Server{ Servername test.com; hören Sie 80; access_log /usr/local/openresty/nginx/logs/test.com_access.log aktuell; error_log /usr/local/openresty/nginx/logs/test.com.log Fehler; Proxy_Set_Header Host $host; Proxy_Set_Header X-Real-IP $Remote_Addr; proxy_set_header X-Weitergeleitet-Für $proxy_add_x_forwarded_for; Proxy-Verbindungs-Timeout 3 s; Proxy_Lese_Timeout 120 s; Proxy_Sendezeitüberschreitung 120 s; Proxy_next_upstream-Fehler, Timeout, ungültiger Header, http_404, http_502, http_504, http_500; Standort /Benutzer/ { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test1/; } Standort / { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test2/; } } 1.2 Python-Skriptpython2 kann ausgeführt werden Dieses Skript wird verwendet, um den Anforderungsinhalt abzurufen. Dies dient als Backend, welches das Backend des Proxy_pass-Proxys ist. #!/usr/bin/env python SimpleHTTPServer importieren SocketServer importieren PORT = 8000 Klasse GetHandler(SimpleHTTPServer.SimpleHTTPRequestHandler): auf def do_GET(selbst): drucken(self.headers) selbst.send_response(200, "") auf def do_POST(selbst): drucken(self.headers) Inhaltslänge = self.headers.getheaders('Inhaltslänge') Länge = int(Inhaltslänge[0]) wenn Inhaltslänge, sonst 0 drucken(self.rfile.read(Länge)) selbst.send_response(200, "") Handler = GetHandler httpd = SocketServer.TCPServer(("", PORT), Handler) httpd.serve_forever() 2. Testen2.1. Testort Es gibt Die Nginx-Konfiguration ist wie folgt Standort /Benutzer/ { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test1/; } Anforderungs-URL Backend-Inhalte Was wird gedruckt: Gastgeber: test1 Inhaltslänge: 0 Benutzer-Agent: PostmanRuntime/7.26.8 Akzeptieren: */* Postman-Token: f2bfe770-4f44-4ee9-91c4-060f59dfb26c Akzeptierte Kodierung: gzip, deflate, br 127.0.0.1 - - [10. April 2021 16:54:26] "POST /test.html HTTP/1.1" 200 - Fazit: Wenn der Proxy-Pass-Adresse ein 2.2. Prüfort Am Ende von proxy_pass steht Die Nginx-Konfiguration ist wie folgt Standort /Benutzer/ { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test1; } Anforderungs-URL Backend-Inhalte Was wird gedruckt:
Fazit: Wenn die Proxy_Pass-Adresse kein 2.3. Drei Standorte testen Kein nachgestelltes Die Nginx-Konfiguration ist wie folgt Standort /Benutzer { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test1; } Anforderungs-URL Backend-Inhalte Was wird gedruckt:
Anfrage 2.4, Standort nicht hinzugefügt Das letzte Die Nginx-Konfiguration ist wie folgt Standort /Benutzer { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Passwort http://test1/; } Anforderungs-URL Backend-Inhalte Was wird gedruckt:
Anfrage 2.5. Standortende Am Ende des Pfads befindet sich ein Die Nginx-Konfiguration ist wie folgt Standort /Benutzer/ { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Pass http://test1/haha/; } Anforderungs-URL Backend-Inhalte Was wird gedruckt:
Anfrage 2.6. Ende des Standorts Am Ende des Pfads befindet sich ein Die Nginx-Konfiguration ist wie folgt Standort /Benutzer/ { proxy_set_header Verbindung ""; Proxy_http_Version 1.1; Proxy-Pass http://test1/haha; } Anforderungs-URL Backend-Inhalte Was wird gedruckt:
Anfrage Abschluss |
Seriennummer | Zugriffs-URL | Standortkonfiguration | Proxy_Pass-Konfiguration | Vom Backend empfangene Anfragen | Bemerkung |
---|---|---|---|---|---|
1 | test.com/Benutzer/test.html | /Benutzer/ | http://test1/ | /prüfung.html | |
2 | test.com/Benutzer/test.html | /Benutzer/ | http://test1 | /Benutzer/test.html | |
3 | test.com/Benutzer/test.html | /Benutzer | http://test1 | /Benutzer/test.html | |
4 | test.com/Benutzer/test.html | /Benutzer | http://test1/ | //test.html | |
5 | test.com/Benutzer/test.html | /Benutzer/ | http://test1/haha/ | /haha/test.html | |
6 | test.com/Benutzer/test.html | /Benutzer/ | http://test1/haha | /hahatest.html |
Bei der täglichen Bereitstellung von Websites wird häufig der Reverse-Proxy proxy_pass
von nginx
verwendet. Es gibt eine Konfiguration, die geklärt werden muss: Bei der Konfiguration proxy_pass
,
/
nach upstram_name
erscheint, ist es gleichbedeutend mit dem absoluten Stammpfad und nginx
wird den mit location
übereinstimmenden Pfadteil nicht als Proxy verwenden./
vorhanden ist, wird auch der passende Pfadteil geproxied.Dies ist das Ende dieses Artikels über die detaillierte Konfiguration des Nginx-Standorts und des Proxy_Pass-Pfads. Weitere relevante Inhalte zur Konfiguration des Nginx-Standorts und des Proxy_Pass-Pfads finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!
<<: So betten Sie mithilfe von Iframe andere Webseiten in eine Webseite ein
>>: 25 CSS-Frameworks, Tools, Software und Vorlagen geteilt
1. DNS-Server-Konzept Die Kommunikation im Intern...
Was ist Redis Cluster? Redis Cluster ist eine von...
In unserer täglichen Arbeit kommen wir oft mit Da...
In diesem Artikel wird der spezifische Code der V...
Nachdem ich viele Schwierigkeiten überwunden hatte...
Guten Morgen allerseits, ich habe meinen Artikel ...
Was ist WSL Zitat aus der Baidu-Enzyklopädie: Das...
Bevor Sie mit dem Haupttext dieses Artikels begin...
Inhaltsverzeichnis Hintergrund Umsetzungsideen Er...
Inhaltsverzeichnis Linux MySQL 5.5 auf MySQL 5.7 ...
Heute werde ich die grundlegendsten Funktionen von...
Einführung Die meisten Leute, die schon einmal Da...
Vorwort „Wenn es um Bildbearbeitung geht, denken ...
Inhaltsverzeichnis denken 1. Bild mit dem gierige...
1. Unter 800 x 600 gibt es keine horizontale Bild...