Nastavení pravidel
Tato stránka poskytuje podrobné informace o každém nastavení na obrazovce Úprava pravidla v aplikaci Redirect Web.
Možnosti
Typ
Zadejte možnost Typ pro řízení toho, jak aplikace zpracovává přesměrování. Můžete si vybrat z těchto možností:
- Původní (Výchozí)
- Toto používá tradiční webová API k řízení přesměrování. Navíc používá Tabs API jako záložní řešení.
- Ve Firefoxu používá WebRequest API k zpracování přesměrování.
- Můžete použít všechny možnosti kromě Typů zdrojů a Metod požadavků.
- Toto je pomalejší než typ Deklarativní a může způsobit dodatečné síťové požadavky.
- Toto používá tradiční webová API k řízení přesměrování. Navíc používá Tabs API jako záložní řešení.
- DNR (Experimentální pro Safari):
- Tento typ funguje mnohem rychleji než původní typ, protože nespouští síťový požadavek pro zdrojovou URL.
- To vám umožňuje specifikovat Typy zdrojů a Metody požadavků.
- ⚠️ Některé možnosti, jako například Zpracování zachycující skupiny a Vyloučené vzory URL, nelze použít, protože dosud nebyly podporovány API DNR.
- ⚠️ V Safari v současné době nemůžete do vzoru regulárního výrazu zahrnout svislé čáry (
|
). Podrobnosti - ⚠️ Jelikož API DNR v Safari má stále některé problémy, považujeme to za experimentální funkci pro Safari. Seznam všech známých problémů naleznete zde.
Přesměrovat z
Možnost Přesměrovat z vám umožňuje specifikovat vzor URL webových stránek, ze kterých chcete přesměrovat. Můžete si vybrat buď Zástupný znak nebo Regulární výraz.
Například, pokud zadáte https://example.com/*
se zástupným znakem, shoduje se s https://example.com/
nebo https://example.com/hello
.
V možnosti Přesměrovat na můžete odkazovat na celou shodu pomocí $0
nebo na částečné shody pomocí $1
, $2
, ... Podrobnosti naleznete v Vzoru URL na této stránce.
Typy zdrojů
Možnost Typy zdrojů vám 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.
V současné době jsou k dispozici tyto:
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ů
Možnost Metody požadavků vám umožňuje nastavit cílové HTTP metody zdrojové URL.
Všechny metody jsou nastaveny ve výchozím nastavení.
Podrobnosti o každé metodě naleznete v mdn web docs.
V Safari tato možnost nemusí být k dispozici, protože implementace Apple pro typ DNR ji v současné době zřejmě nezpracovává. Odeslali jsme zpětnou vazbu společnosti Apple jako FB14502272.
Cílové prohlížeče
Možnost Cílové prohlížeče vám umožňuje specifikovat, 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 v rozbalovacím okně můžete vybrat libovolný 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 vám umožňuje cílit na každý prohlížeč kromě těch, které jste vybrali.
Redirect Web nedokáže rozlišit, zda je prohlížeč Safari nebo Safari Technology Preview, protože aplikace kontroluje rodičovský proces rozšíření, aby to zjistila, ale tyto dva prohlížeče sdílejí stejný rodičovský proces (/sbin/launchd
).
Přesměrovat na
Možnost Přesměrovat na specifikuje cílovou URL, na kterou chcete přesměrovat ze zdrojové URL shodné s možností Přesměrovat z. Můžete také nahradit zachycující skupiny pomocí $1
, $2
, ... nebo celou shodu pomocí $0
. Tyto vám pomohou dynamicky specifikovat cíl. Podrobnosti naleznete v Vzoru 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 shoduje se s https://google.com/hello
, pak cílová URL bude https://apple.com/hello
.
Navíc můžete upravit texty $1
, $2
, ... před provedením substitucí. Podrobnosti naleznete v sekci Zpracování zachycující skupiny.
Můžete zadat vlastní schéma URL pro otevření aplikace. Toto jsou příklady aplikací, které podporují hluboké odkazy:
- 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
Pokud chcete specifikovat aplikaci, kterou chcete otevřít cílovou URL, použijte rozbalovací seznam Aplikace. Toto je k dispozici pouze na macOS.
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í zachycující skupiny
Možnost Zpracování zachycující skupiny vám umožňuje specifikovat, jak zpracovat zachycené skupiny, které můžete nahradit v možnosti Přesměrovat na pomocí $1
, $2
...
Takto se vytvářejí zachycující skupiny:
- Zástupný znak: Texty shodné s
*
a?
jsou automaticky zachyceny. - Regulární výraz: Texty shodné s částí vzoru uvnitř
()
jsou zachyceny.
Můžete si vybrat jeden nebo více z následujících procesů:
- Kódování/dekódování URL: Toto aplikuje procentní kódování nebo dekódování na zachycující skupinu. Například, pokud zakódujete
https://example.com/hello
, převede se nahttps%3A%2F%2Fexample.com%2Fhello
. Dekódování funguje opačným způsobem. - Kódování/dekódování Base64: Toto dekóduje/zakóduje text do Base64. Například, můžete zakódovat
hello
naaGVsbG8=
, a dekódovat to zpět nahello
. - Nahradit výskyty: Toto nahrazuje jeden nebo více znaků ve skupině, shodných s Cílem, Náhradou. Například, pokud je Skupina
hello
a Cíl jel
a Náhrada jey
, změní se naheyyo
.
Toto je pro zpracování každé zachycující 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í zachycující skupiny:
- Skupina:
$1
- Cíl:
.*
(Regulární výraz) - Náhrada:
hello
- Skupina:
- 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
Možnost Vyloučené vzory URL vám umožňuje specifikovat URL, které nejsou přesměrovány. To může být užitečné pro zabránění smyčkám 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 pomocí typů vzorů Regulární výraz nebo Zástupný znak.
Příklady
Možnost Příklady vám umožňuje testovat vaše pravidlo přesměrování poskytnutím vzorových URL. Přidáním vzorové URL můžete zkontrolovat, zda pravidlo funguje podle očekávání, než ho skutečně použijete.
Komentáře
Možnost Komentáře vám umožňuje přidat jakékoli 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 vytvořili konkrétní pravidlo, nebo pro poskytnutí kontextu pro ostatní, kteří by si vaše pravidla mohli prohlédnout.
Vzor URL
Existují 3 možnosti, jak můžete specifikovat jeden nebo více vzorů URL. Přesměrovat z, Vyloučené vzory URL a Zpracování zachycující skupiny. Pro jejich specifikaci si můžete vybrat buď Zástupný znak nebo Regulární výraz.
Zástupný znak
Zástupný znak je jednodušší typ vzoru, který vám umožňuje používat *
(shoduje se s čímkoli) a ?
(shoduje se s jakýmkoli jednotlivým znakem) jako zástupné znaky. Zde jsou některé příklady:
- Pro shodu s
https://example.com/hello
můžete použíthttps://example.com/*
. Toto se shoduje s jakýmkoli řetězcem pohttps://example.com/
. - Pro shodu s
https://example.com/search?q=hello
můžete použíthttps://example.com/search?q=*
. Toto se shoduje s jakoukoli hodnotou pro parametrq
. - Pro shodu s jakoukoli URL, která obsahuje slovo
blog
, můžete použít*blog*
.
Můžete také použít substituci v zástupném znaku, 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". $0
je také k dispozici pro odkazování na celou shodnou URL.
Ačkoli substituce je funkcí regulárního výrazu, můžete ji použít i pro zástupný znak, protože Redirect Web interně převádí zástupný znak na regulární výraz.
Regulární výraz
Regulární výraz (Regex) je mocný nástroj pro shodu vzorů v textu, poháněný enginem regulárních výrazů společnosti Apple, který je popsán zde. Umožňuje vám definovat specifický vzor, který se shoduje se sadou řetězců. Zde jsou některé příklady.
- Pro shodu s
https://example.com/hello
můžete použíthttps://example.com/(.*)
. Toto se shoduje s jakýmkoli řetězcem pohttps://example.com/
a uloží ho do zachycující skupiny. - Pro shodu s
https://example.com/search?q=hello
můžete použíthttps://example.com/search\?q=(.*)
. Toto se shoduje s hodnotou parametruq
a uloží ji do zachycující skupiny. - Pro shodu s jakoukoli URL, která obsahuje slovo
blog
, můžete použít.*blog.*
.
Můžete odkazovat na zachycující skupiny 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.