Detaillierte Analyse der Unterschiede zwischen break und last in Nginx

Detaillierte Analyse der Unterschiede zwischen break und last in Nginx

Lassen Sie uns zunächst über den Unterschied sprechen

  • Zuletzt verwendet die neu geschriebene Regel weiterhin den neu geschriebenen Wert, um ihn mit der folgenden Position abzugleichen.
  • Unterbrechung, die neu geschriebene Regel trifft nicht auf die folgende Position zu. Mit den neuen Regeln wird direkt eine http-Anfrage initiiert.

Nginx-Konfigurationsdatei

Server {
  hören Sie 88;
  Servername _;
  Standort /break { # Standort 1
   umschreiben ^/break/(.*)$ /bak/$1 break;
  }
  Standort /letzter { # Standort 2
   schreibe ^/last/(.*)$ /bak/$1 last neu;
  }

  Standort /bak { # Standort 3
   Standardtyp Text/HTML;
   gib 200 $uri zurück;
  }

}

Besuchen Sie http://rumenz.com:88/break/one

Wenn location1 aufgerufen wird, ändert sich die Adressleiste des Browsers nicht. Der Browser sucht direkt nach der Datei /nginx/html/bak/one. Da es keine solche Datei gibt, wird 404 zurückgegeben.

Browser

Nginx-Fehlerprotokoll (error.log)

/nginx/html/bak/one ist fehlgeschlagen (2: Keine solche Datei oder kein solches Verzeichnis)

break bedeutet, nach dem Neuschreiben anzuhalten und nicht mehr mit dem Standortblock übereinzustimmen.

Besuchen Sie http://rumenz.com:88/last/one

Klicken Sie auf Standort2. Die Adressleiste des Browsers ändert sich nicht. Passen Sie sie erneut an Standort3 an.

„last“ bedeutet, nach dem Umschreiben zum Standortblock zu springen und ihn erneut mit der umgeschriebenen Adresse abzugleichen.

Anwendungsfälle für „Break“ und „Last“

brechen

Dateidownload, Verstecken und Schützen des echten Dateiservers.

Standort /nach unten {
 umschreiben ^/down/(.*)$ https://rumenz.com/file/$1 break;
}

zuletzt

Schreiben Sie die Schnittstellenadresse neu, schreiben Sie https://rumenz.com/api/list um in https://rumenz.com/newapi/list

Standort /API {
 schreibe ^/api/(.*)$ /newapi/$1 zuletzt neu;
}

Standort /newapi {
 Standardtyp Anwendung/json;
 returniere 200 '{"code":200,"msg":"ok","data":["JSON.IM","json format"]}';
}

Zusammenfassen

Dies ist das Ende dieses Artikels über den Unterschied zwischen „break“ und „last“ in Nginx. Weitere Informationen zum Unterschied zwischen „break“ und „last“ in 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:
  • Analyse des Unterschieds zwischen Last und Break beim Schreiben von Rewrite in der Nginx-Konfiguration

<<:  Detaillierter Vue-Code zur Implementierung der Shuttle-Box-Funktion

>>:  So unterscheiden Sie MySQLs innodb_flush_log_at_trx_commit und sync_binlog

Artikel empfehlen

Transkript der Implementierung berechneter Vue-Eigenschaften

In diesem Artikel wird das Implementierungszeugni...

html-Seite!--[if IE]...![endif]--Detaillierte Einführung in die Verwendung

Code kopieren Der Code lautet wie folgt: <!--[...

MySQL Best Practices: Grundlegende Arten von Partitionstabellen

Übersicht über partitionierte MySQL-Tabellen Da M...

Vue implementiert ein einfaches Einkaufswagenbeispiel

In diesem Artikelbeispiel wird der spezifische Co...

Natives js imitiert die Pulldown-Aktualisierung eines Mobiltelefons

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

Installationshandbuch für VMware Workstation 15 Pro (für Anfänger)

01. VMware Workstation Pro 15 herunterladen Herun...

Sechs wichtige Selektoren in CSS (merken Sie sie sich in drei Sekunden)

Von: https://blog.csdn.net/qq_44761243/article/de...

CentOS7-Installations-Tutorial für Zabbix 4.0 (Abbildung und Text)

Deaktivieren Sie SeLinux setenforce 0 Dauerhaft g...

jQuery implementiert die Registrierungsseite zur Mitarbeiterverwaltung

In diesem Artikelbeispiel wird der spezifische Co...

Lösen Sie das domänenübergreifende Problem von Vue + SpringBoot + Shiro

Inhaltsverzeichnis 1. Konfigurieren Sie das Vue-F...

Vue+Websocket implementiert einfach die Chat-Funktion

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

Dieser Artikel entführt Sie in die Welt der js-Datentypen und Datenstrukturen

Inhaltsverzeichnis 1. Was ist dynamische Typisier...

Implementierungsbeispiel für die Message Board-Funktion von Node.js+Express

Inhaltsverzeichnis Nachrichtenbrett Erforderliche...