Ustawienia reguł
Ta strona zawiera szczegółowe informacje o każdym ustawieniu na ekranie Edytuj regułę w aplikacji Redirect Web.
Opcje
Typ
Określ opcję Typ, aby kontrolować, jak aplikacja obsługuje przekierowania. Możesz wybrać spośród następujących:
- Oryginalny (Domyślny)
- Używa tradycyjnych interfejsów API Web do kontroli przekierowania. Dodatkowo, używa interfejsu Tabs API jako mechanizmu awaryjnego.
- W przeglądarce Firefox używa interfejsu WebRequest API do obsługi przekierowań.
- Możesz używać wszystkich opcji poza Typami zasobów i Metodami żądań.
- Jest wolniejszy niż typ Deklaratywny i może powodować dodatkowe żądania sieciowe.
- Używa tradycyjnych interfejsów API Web do kontroli przekierowania. Dodatkowo, używa interfejsu Tabs API jako mechanizmu awaryjnego.
- DNR (Eksperymentalne dla Safari):
- Ten typ działa znacznie szybciej niż typ Oryginalny, ponieważ nie inicjuje żądania sieciowego dla źródłowego adresu URL.
- Umożliwia określenie Typów zasobów i Metod żądań.
- ⚠️ Niektórych opcji nie można używać, takich jak Przetwarzanie grup przechwytujących i Wykluczone wzorce URL, ponieważ nie są jeszcze obsługiwane przez API DNR.
- ⚠️ W przeglądarce Safari, obecnie nie można zawierać symboli potoku (
|
) w wyrażeniach regularnych. Szczegóły - ⚠️ Ponieważ API DNR w Safari nadal ma pewne problemy, uważamy, że jest to nadal funkcja eksperymentalna dla Safari. Listę wszystkich znanych problemów można znaleźć tutaj.
Przekieruj z
Opcja Przekieruj z pozwala określić wzorzec URL stron internetowych, z których chcesz przekierować. Możesz wybrać Wildcard lub Wyrażenie regularne.
Na przykład, jeśli określisz https://example.com/*
z Wildcard, będzie to pasować do https://example.com/
lub https://example.com/hello
.
W opcji Przekieruj do możesz odwołać się do całego dopasowania za pomocą $0
lub częściowych dopasowań za pomocą $1
, $2
, ... Sprawdź szczegóły w sekcji Wzorzec URL na tej stronie.
Typy zasobów
Opcja Typy zasobów umożliwia określenie kategorii żądań sieciowych, takich jak obrazy, skrypty JavaScript i arkusze stylów, do których stosuje się reguła.
Na przykład, jeśli ustawisz script
, możesz przekierować pliki JavaScript ładowane przez strony internetowe.
Obecnie dostępne są następujące:
main_frame
, sub_frame
, stylesheet
, script
, image
, font
, xmlhttprequest
, ping
, media
, websocket
, other
Domyślne ustawienie to main_frame
, czyli strona najwyższego poziomu ładowana do karty.
Sprawdź szczegóły każdego typu zasobu w mdn web docs.
Metody żądań
Opcja Metody żądań pozwala ustawić docelowe metody HTTP źródłowego adresu URL.
Domyślnie ustawione są wszystkie metody.
Sprawdź szczegóły każdej metody w mdn web docs.
W przeglądarce Safari ta opcja może być niedostępna, ponieważ implementacja Apple dla typu DNR nie wydaje się jej obecnie obsługiwać. Wysłałem informację zwrotną do Apple jako FB14502272.
Przeglądarki docelowe
Opcja Przeglądarki docelowe pozwala określić, do której przeglądarki reguła powinna lub nie powinna być zastosowana.
- Dostępne są 2 typy przeglądarek do wyboru:
- Domyślnie dostępne przeglądarki: Domyślnie możesz wybrać Safari, Chrome, Firefox, Edge, Opera, Arc, Brave i Vivaldi. Nie rozróżnia to wariantów tej samej przeglądarki, takich jak Safari i Safari Technology Preview.
- Przeglądarki określone przez użytkownika: Po stuknięciu przycisku Dodaj w wyskakującym okienku możesz wybrać dowolną przeglądarkę inną niż Safari lub Safari Technology Preview, która ma zainstalowane rozszerzenie Redirect Web.
- Pole wyboru Wszystkie z wyjątkiem wybranych pozwala określić wszystkie przeglądarki z wyjątkiem tych, które zostały wybrane.
Redirect Web nie potrafi odróżnić, czy przeglądarka to Safari czy Safari Technology Preview, ponieważ aplikacja sprawdza proces nadrzędny rozszerzenia w celu wykrycia, ale te dwie przeglądarki współdzielą ten sam proces nadrzędny (/sbin/launchd
).
Przekieruj do
Opcja Przekieruj do określa docelowy adres URL, na który chcesz przekierować ze źródłowego adresu URL dopasowanego przez opcję Przekieruj z. Możesz także podstawiać grupy przechwytujące za pomocą $1
, $2
, ... lub całe dopasowanie za pomocą $0
. Pomaga to dynamicznie określić miejsce docelowe. Sprawdź szczegóły w sekcji Wzorzec URL na tej stronie.
Na przykład, jeśli ustawisz następującą regułę:
- Przekieruj z:
https://google.com/*
(Wildcard) - Przekieruj do:
https://apple.com/$1
i dopasuje ona https://google.com/hello
, wówczas docelowy adres URL będzie https://apple.com/hello
.
Dodatkowo, możesz modyfikować teksty $1
, $2
, ... przed dokonaniem podstawień. Sprawdź sekcję Przetwarzanie grup przechwytujących dla szczegółów.
Możesz określić niestandardowy schemat URL, aby otworzyć aplikację. Oto przykłady aplikacji, które obsługują głębokie linkowanie:
- 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
Aplikacja
Jeśli chcesz określić aplikację, w której chcesz otworzyć docelowy adres URL, użyj pola kombi Aplikacja. Jest to dostępne tylko w systemie macOS.
Możesz otworzyć tylko aplikację, która obsługuje App Sandbox. Upewnij się również, że aplikacja obsługuje otwieranie adresu URL, który chcesz otworzyć.
Przetwarzanie grup przechwytujących
Opcja Przetwarzanie grup przechwytujących pozwala określić, jak przetwarzać przechwycone grupy, które można podstawić w opcji Przekieruj do za pomocą $1
, $2
...
Oto sposoby tworzenia grup przechwytujących:
- Wildcard: Teksty dopasowane za pomocą
*
i?
są automatycznie przechwytywane. - Wyrażenie regularne: Teksty dopasowane do części wzorca wewnątrz
()
są przechwytywane.
Możesz wybrać jeden lub więcej z następujących procesów:
- Koduj/dekoduj URL: Stosuje kodowanie procentowe lub dekodowanie do grupy przechwytującej. Na przykład, jeśli zakodujesz
https://example.com/hello
, zostanie przekonwertowane nahttps%3A%2F%2Fexample.com%2Fhello
. Dekodowanie działa odwrotnie. - Koduj/dekoduj Base64: Dekoduje/koduje tekst w Base64. Na przykład, możesz zakodować
hello
naaGVsbG8=
i zdekodować z powrotem nahello
. - Zastąp wystąpienia: Zastępuje jeden lub więcej znaków w grupie, dopasowanych przez Cel, za pomocą Zastąpienia. Na przykład, jeśli Grupa to
hello
, a Cel tol
, a Zastąpienie toy
, zostanie zmodyfikowane naheyyo
.
Służy to do przetwarzania każdej grupy przechwytującej i nie wpływa na to, które adresy URL są wykluczane przez Wykluczone wzorce URL. Na przykład, załóżmy, że masz następującą regułę:
- Przekieruj z:
https://example.com/(hello.*)
- Przetwarzanie grup przechwytujących:
- Grupa:
$1
- Cel:
.*
(Wyrażenie regularne) - Zastąpienie:
hello
- Grupa:
- Wykluczony wzorzec URL:
https://example.com/hello
W tym przypadku https://example.com/hello_world
nie zostanie wykluczone, natomiast https://example.com/hello
zostanie wykluczone.
Wykluczone wzorce URL
Opcja Wykluczone wzorce URL pozwala określić adresy URL, które nie są przekierowywane. Może to być przydatne, aby uniknąć pętli przekierowań lub wykluczyć niektóre części witryny z przekierowań.
Wykluczone wzorce URL można określić za pomocą wyrażeń regularnych lub wzorców Wildcard.
Przykłady
Opcja Przykłady pozwala przetestować regułę przekierowania, podając przykładowe adresy URL. Dodając przykładowy adres URL, możesz sprawdzić, czy reguła działa zgodnie z oczekiwaniami, zanim faktycznie ją zastosujesz.
Komentarze
Opcja Komentarze pozwala dodawać wszelkie notatki lub komentarze dotyczące reguły przekierowania. Może to być przydatne do śledzenia, dlaczego utworzono konkretną regułę, lub do dostarczania kontekstu innym osobom, które mogą przeglądać Twoje reguły.
Wzorzec URL
Istnieją 3 opcje, w których można określić jeden lub więcej wzorców URL: Przekieruj z, Wykluczone wzorce URL i Przetwarzanie grup przechwytujących. Aby je określić, możesz wybrać Wildcard lub Wyrażenie regularne.
Wildcard
Wildcard to prostszy typ wzorca, który pozwala używać *
(dopasowuje wszystko) i ?
(dopasowuje dowolny pojedynczy znak) jako znaków wieloznacznych. Oto kilka przykładów:
- Aby dopasować
https://example.com/hello
, możesz użyćhttps://example.com/*
. Spowoduje to dopasowanie dowolnego ciągu pohttps://example.com/
. - Aby dopasować
https://example.com/search?q=hello
, możesz użyćhttps://example.com/search?q=*
. Spowoduje to dopasowanie dowolnej wartości parametruq
. - Aby dopasować dowolny adres URL zawierający słowo
blog
, możesz użyć*blog*
.
Możesz również użyć podstawień w Wildcard, co oznacza, że możesz odwoływać się do części dopasowanego adresu URL za pomocą $1
, $2
itd. Na przykład, jeśli użyjesz https://example.com/*-world-*
, a adres URL to https://example.com/hello-world-goodbye
, wówczas $1
będzie "hello", a $2
będzie "goodbye". $0
jest również dostępne do odwoływania się do całego dopasowanego adresu URL.
[!Note] Chociaż podstawienie jest cechą wyrażeń regularnych, możesz go również użyć dla Wildcard, ponieważ Redirect Web wewnętrznie konwertuje Wildcard na wyrażenie regularne.
Wyrażenie regularne
Wyrażenie regularne (Regex) to potężne narzędzie do dopasowywania wzorców w tekście, zasilane przez silnik wyrażeń regularnych Apple, opisany tutaj. Pozwala zdefiniować konkretny wzorzec, który pasuje do zestawu ciągów. Oto kilka przykładów.
- Aby dopasować
https://example.com/hello
, możesz użyćhttps://example.com/(.*)
. Spowoduje to dopasowanie dowolnego ciągu pohttps://example.com/
i zapisanie go w grupie przechwytującej. - Aby dopasować
https://example.com/search?q=hello
, możesz użyćhttps://example.com/search\?q=(.*)
. Spowoduje to dopasowanie wartości parametruq
i zapisanie jej w grupie przechwytującej. - Aby dopasować dowolny adres URL zawierający słowo
blog
, możesz użyć.*blog.*
.
Możesz odwoływać się do grup przechwytujących w Przekieruj do lub Zastąpieniu za pomocą $1
, $2
, ... lub $0
, aby odwołać się do całego dopasowania.
Więcej informacji na temat składni Regex można znaleźć w zasobach takich jak RegExr.