Nginx

Regex-Beispiele für Nginx-Standorte

Regex-Beispiele für Nginx-Standorte
Die Nginx Location-Direktive ermöglicht das Weiterleiten von Anfragen an einen bestimmten Ort im Dateisystem. Während Nginx einen Standortblock mit der angeforderten URL abgleicht oder durchsucht, teilt die Standortdirektive Nginx mit, wo nach einem bestimmten Pfad gesucht werden soll, indem alle Dateien und Verzeichnisse eingeschlossen werden.

In diesem Artikel werden wir die Regex-Beispiele für den Nginx-Standort kurz erläutern.

Voraussetzungen

In diesem Artikel wird davon ausgegangen, dass Nginx bereits auf Ihrem System installiert ist.

Syntax der Nginx-Standortdirektive

Die folgende Syntax ist für das Standortverzeichnis in der Nginx-Konfigurationsdatei verfügbar:

Standort [Modifikator] [URL-Übereinstimmung]

Der Nginx-Standortblock kann in einem Serverblock oder an einem anderen Standort mit einigen vordefinierten Bedingungen hinzugefügt werden. In der obigen Syntax ist der Modifikator ein optionaler Parameter. Das Vorhandensein von Modifikatoren im Standortblock ermöglicht es Nginx, mit einer URL in einer anderen Reihenfolge umzugehen. Hier werden im Folgenden einige Modifikatoren mit einigen Beispielen erwähnt:

1. Abgleich aller Anfragen mit Nginx-Standortblock

Das '/' wird für den Standort des Präfixes verwendet, um allen Anfragen zu entsprechen. Wenn jedoch keine besten Übereinstimmungen gesucht werden, wird es als letztes Ergebnis verwendet.

Beispiel
Im folgenden Standortblock wird es mit allen Anfragen übereinstimmen:

Lage /

2. Abgleichen des Verzeichnisses mit dem Standortblock in Nginx

Das folgende Beispiel entspricht jeder Anfrage im Standortblock, die mit /images/ beginnt. Folglich wird nach einem spezifischeren übereinstimmenden Block für den angeforderten URI gesucht. Wenn Nginx jedoch nicht nach einer genaueren Übereinstimmung sucht, wird der Standortblock direkt ausgewählt.

Beispiel
Im folgenden Beispiel stimmt Nginx mit jeder Anfrage im Standortblock überein, die mit /images/ beginnt.

Standort /Bilder/

3. Genaue Übereinstimmung mit '=' (gleich) Standort-Modifikator

Das Gleichheitszeichen '=' wird verwendet, wenn Sie den Standortblock genau mit einem angeforderten URI abgleichen match.

Beispiel
Nginx versucht zuerst, die spezifischsten Präfixstandorte abzugleichen. Im folgenden Beispiel entspricht der Modifikator '=' im Standortblock jedoch genau dem angeforderten Präfixpfad und stoppt dann die Suche nach besseren Übereinstimmungen.

Standort = /imgs

Im oben genannten Beispiel für einen Standortblock stimmt der Standortmodifikator '=' genau mit der URL mydomain überein.com/imgs. Die URLs 'mydomain/imgs/index.html' oder 'mydomain/imgs/' entsprechen nicht der Bedingung.

4. Groß-/Kleinschreibung bei Regex-Übereinstimmung mit dem Modifikator Tilda (~)

Der Modifikator tilda (~) führt die Suche nach Übereinstimmungen mit regulären Ausdrücken unter Beachtung der Groß-/Kleinschreibung für den angeforderten URI durch und sucht kontinuierlich nach einer besseren Übereinstimmung.

Beispiel
Der Modifikator ~ im folgenden Beispiel führt die Übereinstimmung mit Groß-/Kleinschreibung (regulärer Ausdruck) im Standortblock durch:

Standort ~ /imgs

5. Übereinstimmung zwischen Groß- und Kleinschreibung mit dem Modifikator Tilda (~*)

Das Tilde-Zeichen mit einem Asterisk (~*)-Modifikator stimmt mit jeder (Groß-/Kleinschreibung nicht zu unterscheidenden) Anfrage im nächsten Standortblock überein, die mit einem bestimmten Dateiformat endet, z. B. Dateiendung mit png, gif,ico, jpeg, jpg, css oder js j. Alle Anfragen, die an den /imgs/-Ordner gesendet werden, werden jedoch vom vorherigen Standortblock unterstützt.

Beispiel
Im folgenden Speicherortblock werden alle Dateitypen berücksichtigt, bei denen die Groß-/Kleinschreibung nicht beachtet wird.

Standort ~* .(png|ico|gif|jpg|jpeg|css|js)$

6. Caret-Tilde-Zeichen (^~) Modifikator für RegEx Match

Der Modifikator caret-tilda (^~) wird verwendet, um den Abgleich mit regulären Ausdrücken unter Beachtung der Groß-/Kleinschreibung mit der angeforderten URL durchzuführen. Wenn daher die übereinstimmende URI in /imgs oder /imgs/pico.png wird die Suche beendet, um eine bessere Übereinstimmung zu finden.

Standort ^~ /imgs

Fazit

Wir haben mit regex ein paar Beispiele und wichtige Details zur Nginx-Standortrichtlinie besprochen. Wir haben in diesem Artikel auch die Verwendung von Modifikatoren mit Beispielen erwähnt. Ich hoffe, dieser Artikel wird Ihnen helfen, das Hauptkonzept der Standortblöcke in NGINX zu verstehen. Vielen Dank!

OpenTTD vs. Simutrans
Das Erstellen einer eigenen Transportsimulation kann Spaß machen, entspannend und äußerst verlockend sein. Deshalb sollten Sie so viele Spiele wie mög...
OpenTTD-Tutorial
OpenTTD ist eines der beliebtesten Wirtschaftssimulationsspiele auf dem Markt. In diesem Spiel musst du ein wunderbares Transportunternehmen aufbauen....
SuperTuxKart für Linux
SuperTuxKart ist ein großartiger Titel, der entwickelt wurde, um Ihnen das Mario Kart-Erlebnis kostenlos auf Ihrem Linux-System zu bieten. Es ist ziem...