URL-Umschreibung
Chute kann die URL der Anfrage mit verschiedenen Methoden umschreiben oder bestimmte Anfragen nach URL ablehnen.
Nur eine Regel kann auf eine einzelne Anfrage angewendet werden.
Beispiel:
[URL Rewrite]
^http://www\.google\.cn http://www.google.com header
^http://amazon\.cn https://z.cn 302
^http://ad\.com/ad\.png _ reject
^http://tracker\.com/event _ reject-200
^http://ad\.com/pixel _ reject-img
^http://api\.example\.com/block _ reject-dict
Die Umschreibungsregel besteht aus 3 Teilen: regulärer Ausdruck, Ersetzung und Typ.
Für die Reject-Typen (
reject,reject-200,reject-img,reject-dict) wird auch eine Zwei-Token-Kurzform<pattern> rejectohne den_-Platzhalter akzeptiert.
Header-Modus
Chute ändert den Anfrage-Header und leitet die Anfrage bei Bedarf an einen anderen Host weiter. Der Client bemerkt diese Umschreibungsaktion nicht. (Dieser Modus entspricht dem "Map Remote" von Surge.)
Das Feld "Host" im Anfrage-Header wird so geändert, dass es mit der neuen URL übereinstimmt.
[URL Rewrite]
^http://www\.google\.cn http://www.google.com header
Die Ersetzung kann auch eine reine Pfadform wie /new/path sein. In diesem Fall wird nur die Anfragezeile auf den neuen Pfad umgeschrieben, und die Anfrage wird weiterhin an denselben Host gesendet.
Wenn das Ziel nicht direkt umgeschrieben werden kann — zum Beispiel beim Umschreiben einer einfachen HTTP-Anfrage auf eine
https://-URL oder beim Umschreiben einer HTTPS-Anfrage (mit aktiviertem MitM) auf einen anderen Origin — antwortet Chute dem Client automatisch stattdessen mit einer 307-Weiterleitung auf die neue URL anstelle einer transparenten Header-Umschreibung.
302-Modus
Chute gibt einfach eine 302-Weiterleitungsantwort zurück. HTTPS-Anfragen können umgeleitet werden, wenn MitM für den Hostnamen aktiviert ist.
[URL Rewrite]
^http://amazon\.cn https://z.cn 302
307-Modus
Chute gibt einfach eine 307-temporäre-Weiterleitungsantwort zurück. HTTPS-Anfragen können umgeleitet werden, wenn MitM für den Hostnamen aktiviert ist.
[URL Rewrite]
^http://amazon\.cn https://z.cn 307
Reject-Modus
Lehnt die Anfrage ab, wenn das Muster übereinstimmt. Der Ersetzungsparameter wird ignoriert. Gibt eine HTTP-503-Antwort zurück. HTTPS-Anfragen werden abgelehnt, wenn MitM für den Hostnamen aktiviert ist.
[URL Rewrite]
^http://ad\.com/ad\.png _ reject
Reject-200-Modus
Lehnt die Anfrage mit einem HTTP-200-OK-Status und einem Body der Länge Null ab. Nützlich zum stillen Blockieren von Tracking-Anfragen, ohne Fehlerbehandlung auszulösen.
[URL Rewrite]
^http://tracker\.com/event _ reject-200
Reject-Img-Modus
Lehnt die Anfrage ab, indem ein 1x1 weißes GIF-Bild zurückgegeben wird (HTTP 200 OK). Nützlich zum Blockieren von Werbebildern, ohne dass Platzhalter für defekte Bilder entstehen.
[URL Rewrite]
^http://ad\.com/pixel _ reject-img
Reject-Dict-Modus
Lehnt die Anfrage ab, indem ein leeres JSON-Objekt {} zurückgegeben wird (HTTP 200 OK). Nützlich zum Blockieren von API-Aufrufen, die eine JSON-Antwort erwarten.
[URL Rewrite]
^http://api\.example\.com/block _ reject-dict
Diese Seite ist eine Übersetzung der englischen Version. Bei Abweichungen ist die englische Version maßgeblich.