Nastavení pravidel
Tato stránka poskytuje podrobné informace o každém nastavení na obrazovce Upravit pravidlo v aplikaci Redirect Web.
Možnosti
Typ
Zadejte možnost Typ pro řízení způsobu, jakým 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 pro 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ě Typy zdrojů a Metody 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 pro záložní řešení.
- DNR (Experimentální pro Safari):
- Tento typ funguje mnohem rychleji než typ Original, protože nespouští síťový požadavek pro zdrojovou URL.
- To vám umožňuje specifikovat Typy zdrojů a Metody požadavků.
- ⚠️ Nemůžete použít některé možnosti, jako je Zpracování zachycovacích skupin a Vyloučené vzory URL, protože je API DNR zatím nepodporuje.
- ⚠️ V Safari v současné době nemůžete do vzoru regulárního výrazu zahrnout svislé čáry (
|
). Podrobnosti - ⚠️ Jelikož API DNR v Safari stále má 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, bude to odpovídat https://example.com/
nebo https://example.com/hello
.
V možnosti Přesměrovat na můžete odkazovat na celý shodu pomocí $0
nebo částečné shody pomocí $1
, $2
, ... Podrobnosti naleznete v Vzor 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 dostupná, protože implementace typu DNR od společnosti Apple ji v současné době zřejmě nezpracovává. Společnosti Apple jsme zaslali zpětnou vazbu 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í 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 všechny prohlížeč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 jej 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 určuje cílovou URL, na kterou chcete přesměrovat ze zdrojové URL shodné s možností Přesměrovat z. Můžete také nahradit zachycovací skupiny pomocí $1
, $2
, ... nebo celou shodu pomocí $0
. Tyto pomáhají dynamicky specifikovat cíl. Podrobnosti naleznete v 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
.
Navíc můžete upravit texty $1
, $2
, ... před provedením substitucí. Podrobnosti naleznete v sekci Zpracování zachycovacích skupin.
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 zadat aplikaci, kterou chcete otevřít cílovou URL, použijte kombinované pole 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í zachycovacích skupin
Možnost Zpracování zachycovacích skupin vám umožňuje specifikovat, jak zpracovat zachycené skupiny, které můžete nahradit v možnosti Přesměrovat na pomocí $1
, $2
...
Zde je, jak vytvořit zachycovací 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ů:
- URL Kódovat/Dekódovat: Toto aplikuje procentové kódování nebo dekódování na zachycovací skupinu. Například, pokud zakódujete
https://example.com/hello
, převede se to nahttps%3A%2F%2Fexample.com%2Fhello
. Dekódování funguje opačným způsobem. - Base64 Kódovat/Dekódovat: Toto dekóduje/kó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 to naheyyo
.
Toto je pro 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í zachycovacích skupin:
- 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í přesměrovacím smyčkám 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 otestovat 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ížet.
Komentáře můžete psát v následujících formátech:
- Prostý text (Výchozí): Jednoduchý text bez jakéhokoli formátování.
- Markdown: Můžete použít syntaxe Markdownu GitHubu, včetně některých rozšíření, které GFM nepodporuje. Například můžete vytvářet nadpisy, seznamy, odkazy a další.
- AsciiDoc: Můžete použít syntaxe AsciiDoc k formátování vašich komentářů.
Vzor URL
Vzory URL se používají k porovnávání URL v možnostech Přesměrovat z, Vyloučené vzory URL a Zpracování zachycovacích skupin. 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 *
(odpovídá čemukoli) a ?
(odpovídá jakémukoli jednotlivému znaku) jako zástupné znaky. Zde jsou některé příklady:
- Pro shodu
https://example.com/hello
můžete použíthttps://example.com/*
. Toto bude odpovídat jakémukoli řetězci pohttps://example.com/
. - Pro shodu
https://example.com/search?q=hello
můžete použíthttps://example.com/search?q=*
. Toto bude odpovídat jakékoli hodnotě parametruq
. - Pro shodu jakékoli 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 porovnávání vzorů v textu a je také široce používán v programování. Umožňuje vám definovat specifický vzor, který odpovídá sadě řetězců. Zde jsou některé příklady.
- Pro shodu
https://example.com/hello
můžete použíthttps://example.com/.*
. Toto bude odpovídat jakémukoli řetězci pohttps://example.com/
. - Pro shodu
https://example.com/search?q=hello
můžete použíthttps://example.com/search\?q=(.*)
. Toto bude odpovídat hodnotě parametruq
a uloží ji do zachycovací skupiny. Poté na ni můžete odkazovat pomocí$1
v možnosti Přesměrovat na. - Pro shodu jakékoli URL, která obsahuje slovo
blog
, můžete použít.*blog.*
.
Můžete odkazovat na zachycovací skupiny v Přesměrovat na nebo Náhrada pomocí $1
, $2
, ... nebo $0
pro odkazování na celou shodu.
Redirect Web je poháněn regex enginem Apple.
Více informací o syntaxi Regex naleznete v zdrojích jako RegExr.