Přeskočit na hlavní obsah

Nastavení pravidla

Tato stránka poskytuje podrobné informace o každém nastavení na obrazovce Upravit pravidlo (Edit Rule) ve webové aplikaci Redirect Web.

Možnosti

Typ

Pomocí možnosti Typ (Type) ovládáte, jak aplikace zpracovává přesměrování. Můžete si vybrat z těchto možností:

  • Původní (Výchozí)
    • Používá tradiční webová API k řízení přesměrování. Dodatečně využívá Tabs API jako záložní řešení.
      • Ve Firefoxu používá WebRequest API ke zpracování přesměrování.
    • Můžete použít všechny možnosti kromě Typů zdrojů a Metod požadavků.
    • Tento typ je pomalejší než typ Deklarativní a může způsobit dodatečné síťové požadavky.
  • DNR (Experimentální pro Safari):
    • Tento typ funguje mnohem rychleji než typ Original, protože neiniciuje síťový požadavek pro zdrojovou URL.
    • Umožňuje vám specifikovat Typy zdrojů a Metody požadavků.
    • ⚠️ Nemůžete použít některé možnosti, jako je Zpracování zachycených skupin a Vyloučené vzory URL, protože je DNR API zatím nepodporuje.
    • ⚠️ V Safari aktuálně nelze do vzoru regulárního výrazu (|) zahrnout svislé čáry. Podrobnosti
    • ⚠️ Jelikož DNR API v Safari má stále určité problémy, považujeme tuto funkci za experimentální pro Safari. Seznam všech známých problémů naleznete zde.

Přesměrovat z

Možnost Přesměrovat z (Redirect From) umožňuje zadat vzor URL webových stránek, ze kterých chcete přesměrovat. Můžete si vybrat buď Zástupné znaky, nebo Regulární výraz.

Například, pokud zadáte https://example.com/* se zástupným znakem, bude to odpovídat https://example.com/ nebo https://example.com/hello.

note

V možnosti Přesměrovat na (Redirect To) můžete odkazovat na celý shodu pomocí $0 nebo na částečné shody pomocí $1, $2, ... Podrobnosti naleznete v části Vzor URL na této stránce.

Typy zdrojů

Podporované typy: DNR

Možnost Typy zdrojů (Resource Types) umožňuje specifikovat kategorie webových požadavků, jako jsou obrázky, JavaScripty a styly, na které se pravidlo vztahuje. Například, pokud nastavíte script, můžete přesměrovat soubory JavaScriptu načtené webovými stránkami.

Aktuálně jsou dostupné tyto typy: main_frame, sub_frame, stylesheet, script, image, font, xmlhttprequest, ping, media, websocket, other

Výchozí nastavení je main_frame, což je stránka nejvyšší úrovně načtená do záložky.

Podrobnosti o každém typu zdroje naleznete v mdn web docs.

Metody požadavků

Podporované typy: DNR

Možnost Metody požadavků (Request Methods) vám umožňuje nastavit cílové HTTP metody zdrojové URL.

Ve výchozím nastavení jsou nastaveny všechny metody.

Podrobnosti o každé metodě naleznete v mdn web docs.

warning

V Safari nemusí být tato možnost dostupná, protože implementace typu DNR od společnosti Apple ji v současné době zřejmě nepodporuje. Odeslali jsme zpětnou vazbu společnosti Apple pod FB14502272.

Cílové prohlížeče

Podporované platformy: macOS

Možnost Cílové prohlížeče (Target Browsers) umožňuje určit, na který prohlížeč by se pravidlo mělo nebo nemělo vztahovat.

  • Můžete si vybrat ze 2 typů prohlížečů:
    • Prohlížeče, které můžete vybrat ve výchozím nastavení: Ve výchozím nastavení si můžete vybrat Safari, Chrome, Firefox, Edge, Opera, Arc, Brave a Vivaldi. Toto nerozlišuje varianty stejného prohlížeče, jako je Safari a Safari Technology Preview.
    • Uživatelem specifikované prohlížeče: Klepnutím na tlačítko Přidat (Add) na vyskakovacím okně můžete vybrat jakýkoli prohlížeč kromě Safari nebo Safari Technology Preview, který má nainstalované rozšíření Redirect Web.
  • Zaškrtávací políčko Vše kromě vybraných (All except selected) vám umožní cílit na všechny prohlížeče kromě těch, které jste zvolili.
warning

Redirect Web nemůže rozlišit, zda se jedná o prohlížeč Safari nebo Safari Technology Preview, protože aplikace kontroluje rodičovský proces rozšíření, aby ho detekovala, ale tyto dva prohlížeče sdílejí stejný rodičovský proces (/sbin/launchd).

Přesměrovat na

Možnost Přesměrovat na (Redirect To) určuje cílovou URL, na kterou si přejete přesměrovat ze zdrojové URL, která odpovídá možnosti Přesměrovat z. Můžete také nahradit zachycené skupiny pomocí $1, $2, ... nebo celou shodu pomocí $0. Tyto pomůcky vám pomohou dynamicky specifikovat cíl. Podrobnosti naleznete v části Vzor URL na této stránce.

Například, pokud nastavíte následující pravidlo:

  • Přesměrovat z: https://google.com/* (Zástupný znak)
  • Přesměrovat na: https://apple.com/$1

a odpovídá https://google.com/hello, pak cílová URL bude https://apple.com/hello.

Kromě toho můžete před provedením substitucí upravit texty $1, $2, ... Podrobnosti naleznete v sekci Zpracování zachycených skupin.

tip

Můžete specifikovat vlastní schéma URL pro otevření aplikace. Toto jsou příklady aplikací, které podporují deep linking:

  • Figma: figma://file/Your_Figma_ID
  • Firefox: firefox://open-url?url=https://example.com/hello
  • Google Chrome: googlechromes://example.com
  • Microsoft Edge: microsoft-edge://example.com
  • Notion: notion://www.notion.so/Your_Note_ID
  • Slack: slack://open

Aplikace

Podporované typy: Original Podporované platformy: macOS

Pokud chcete zadat aplikaci, ve které si přejete otevřít cílovou URL, použijte rozbalovací seznam Aplikace (Application). Tato možnost je dostupná pouze na macOS.

warning

Můžete otevřít pouze aplikaci, která podporuje App Sandbox. Také se ujistěte, že aplikace podporuje otevírání URL, kterou chcete otevřít.

Zpracování zachycených skupin

Podporované typy: Original

Možnost Zpracování zachycených skupin (Capturing Group Processing) umožňuje specifikovat, jak zpracovat zachycené skupiny, které můžete nahradit v možnosti Přesměrovat na pomocí $1, $2...

Zde je postup, jak vytvářet zachycené skupiny:

  • Zástupný znak (Wildcard): Texty odpovídající * a ? jsou automaticky zachyceny.
  • Regulární výraz (Regular Expression): Texty odpovídající části vzoru uvnitř () jsou zachyceny.

Můžete si vybrat jeden nebo více z následujících procesů:

  • URL Kódovat/Dekódovat: Toto aplikuje procentní kódování nebo dekódování na zachycenou skupinu. Například, pokud zakódujete https://example.com/hello, převede se na https%3A%2F%2Fexample.com%2Fhello. Dekódování funguje opačně.
  • Base64 Kódovat/Dekódovat: Toto dekóduje/zakóduje text do Base64. Například můžete zakódovat hello na aGVsbG8= a dekódovat zpět na hello.
  • Nahradit výskyty: Toto nahradí jeden nebo více znaků ve skupině, které odpovídají Cíli (Target), Náhradou (Replacement). Například, pokud je Skupina hello a Cíl je l a Náhrada je y, změní se na heyyo.
note

Toto slouží ke zpracování každé zachycené skupiny a neovlivňuje, které URL jsou vyloučeny Vyloučenými vzory URL. Například, řekněme, že máte toto pravidlo:

  • Přesměrovat z: https://example.com/(hello.*)
  • Zpracování zachycených skupin:
    • Skupina: $1
    • Cíl: .* (Regulární výraz)
    • Náhrada: hello
  • Vyloučený vzor URL: https://example.com/hello

V tomto případě https://example.com/hello_world nebude vyloučeno, zatímco https://example.com/hello bude vyloučeno.

Vyloučené vzory URL

Podporované typy: Original

Možnost Vyloučené vzory URL (Excluded URL Patterns) umožňuje specifikovat URL, které nebudou přesměrovány. To může být užitečné pro zamezení smyček přesměrování nebo pro vyloučení určitých částí webové stránky z přesměrování.

Vyloučené vzory URL můžete specifikovat buď pomocí typu vzoru Regulární výraz, nebo Zástupný znak.

Příklady

Možnost Příklady (Examples) umožňuje otestovat pravidlo přesměrování zadáním ukázkových URL. Přidáním ukázkové URL můžete ověřit, zda pravidlo funguje podle očekávání, než ho skutečně použijete.

Komentáře

Možnost Komentáře (Comments) vám umožňuje přidávat poznámky nebo komentáře k vašemu pravidlu přesměrování. To může být užitečné pro sledování toho, proč jste konkrétní pravidlo vytvořili, nebo pro poskytnutí kontextu ostatním, kteří by si vaše pravidla mohli prohlížet.

Vzor URL

Existují 3 možnosti, kde můžete specifikovat jeden nebo více vzorů URL. Přesměrovat z, Vyloučené vzory URL a Zpracování zachycených skupin. Pro jejich specifikaci si můžete vybrat buď Zástupný znak (Wildcard), nebo Regulární výraz (Regular Expression).

Zástupný znak

Zástupný znak (Wildcard) je jednodušší typ vzoru, který umožňuje používat * (shoduje se s čímkoli) a ? (shoduje se s jakýmkoli jedním znakem) jako zástupné znaky. Zde jsou některé příklady:

  • Pro shodu s https://example.com/hello můžete použít https://example.com/*. Toto se shoduje s jakýmkoli řetězcem za https://example.com/.
  • Pro shodu s https://example.com/search?q=hello můžete použít https://example.com/search?q=*. Toto se shoduje s jakoukoli hodnotou parametru q.
  • Pro shodu s jakoukoli URL, která obsahuje slovo blog, můžete použít *blog*.

V zástupných znacích můžete také použít substituci, což znamená, že můžete odkazovat na části shodné URL pomocí $1, $2 atd. Například, pokud použijete https://example.com/*-world-* a URL je https://example.com/hello-world-goodbye, pak $1 by bylo "hello" a $2 by bylo "goodbye". K dispozici je také $0 pro odkazování na celou shodnou URL.

[!Note] Přestože substituce je funkcí regulárních výrazů, můžete ji použít i pro zástupné znaky, protože Redirect Web interně převádí zástupné znaky na regulární výrazy.

Regulární výraz

Regulární výraz (Regex) je výkonný nástroj pro porovnávání vzorů v textu, poháněný enginem regulárních výrazů od společnosti Apple, který je popsán zde. Umožňuje definovat specifický vzor, který odpovídá sadě řetězců. Zde jsou některé příklady.

  • Pro shodu s https://example.com/hello můžete použít https://example.com/(.*). Toto se shoduje s jakýmkoli řetězcem za https://example.com/ a uloží jej do zachycené skupiny.
  • Pro shodu s https://example.com/search?q=hello můžete použít https://example.com/search\?q=(.*). Toto se shoduje s hodnotou parametru q a uloží ji do zachycené skupiny.
  • Pro shodu s jakoukoli URL, která obsahuje slovo blog, můžete použít .*blog.*.

Na zachycené skupiny můžete odkazovat v Přesměrovat na nebo Náhradě pomocí $1, $2, ... nebo $0 pro odkazování na celou shodu.

Více informací o syntaxi Regex naleznete v zdrojích jako RegExr.