Ustawienia reguł
Ta strona zawiera szczegółowe informacje o każdym ustawieniu na ekranie Edytuj regułę w aplikacji RedirectWeb.
Opcje
Typ
Określ opcję Typ, aby kontrolować, w jaki sposób aplikacja obsługuje przekierowania. Możesz wybrać jedną z poniższych opcji:
- Oryginalny (Domyślny)
- Wykorzystuje tradycyjne interfejsy API sieci Web do sterowania przekierowaniami. Dodatkowo wykorzystuje Tabs API jako rozwiązanie awaryjne.
- W przeglądarce Firefox wykorzystuje WebRequest API do obsługi przekierowań.
- Możesz korzystać ze wszystkich opcji poza Typami zasobów i Metodami żądań.
- ⚠️ Jest to wolniejsze niż typ DNR i może powodować dodatkowe żądania sieciowe.
- Wykorzystuje tradycyjne interfejsy API sieci Web do sterowania przekierowaniami. Dodatkowo wykorzystuje Tabs API jako rozwiązanie awaryjne.
- DNR (Eksperymentalne dla Safari):
- Ten typ działa znacznie szybciej niż typ Oryginalny, ponieważ nie inicjuje żądania sieciowego dla źródłowego adresu URL.
- Pozwala to na określenie Typów zasobów i Metod żądań.
- ⚠️ Nie można używać niektórych opcji, takich jak Przetwarzanie grup przechwytujących i Wykluczone wzorce URL, ponieważ nie są one jeszcze obsługiwane przez DNR API.
- ⚠️ W Safari obecnie nie można używać pionowych kresek (
|) we wzorcach wyrażeń regularnych. Szczegóły - ⚠️ Ponieważ DNR API w Safari nadal ma pewne problemy, uważamy, że jest to wciąż funkcja eksperymentalna dla tej przeglądarki. Listę wszystkich znanych problemów można znaleźć tutaj.
Przekieruj z
Opcja Przekieruj z pozwala określić wzorzec adresu URL stron internetowych, z których chcesz przekierowywać. Możesz wybrać Symbol wieloznaczny (Wildcard) lub Wyrażenie regularne (Regular Expression).
Na przykład, jeśli określisz https://example.com/* jako Wildcard, dopasuje on https://example.com/ lub https://example.com/hello.
W opcji Przekieruj do możesz odwoływać się do całego dopasowania za pomocą $0 lub częściowych dopasowań za pomocą $1, $2, ... Szczegóły znajdziesz w sekcji Wzorzec URL na tej stronie.
Typy zasobów
Opcja Typy zasobów pozwala określić kategorie żądań internetowych, takich jak obrazy, skrypty JavaScript i arkusze stylów, do których ma zastosowanie reguła.
Na przykład, jeśli ustawisz script, możesz przekierowywać pliki JavaScript ładowane przez strony internetowe.
Obecnie dostępne są:
main_frame, sub_frame, stylesheet, script, image, font, xmlhttprequest, ping, media, websocket, other
Ustawienie domyślne to main_frame, czyli strona najwyższego poziomu załadowana do karty.
Szczegółowe informacje o każdym typie zasobu znajdziesz 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.
Szczegółowe informacje o każdej metodzie znajdziesz w mdn web docs.
W Safari ta opcja może być niedostępna, ponieważ implementacja Apple dla typu DNR obecnie zdaje się jej nie obsługiwać. Przesłaliśmy informację zwrotną do Apple jako FB14502272.
Docelowe przeglądarki
Opcja Docelowe przeglądarki pozwala określić, w której przeglądarce reguła powinna lub nie powinna być stosowana.
- Możesz wybrać dwa rodzaje przeglądarek:
- Przeglądarki dostępne domyślnie: 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: Klikając przycisk Dodaj w popoverze, możesz wybrać dowolną przeglądarkę inną niż Safari lub Safari Technology Preview, która ma zainstalowane rozszerzenie RedirectWeb.
- Pole wyboru Wszystkie oprócz wybranych pozwala skierować regułę do każdej przeglądarki z wyjątkiem tych, które zostały wybrane.
RedirectWeb nie może rozróżnić, czy przeglądarką jest Safari czy Safari Technology Preview, ponieważ aplikacja sprawdza proces nadrzędny rozszerzenia, aby go wykryć, a obie te 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 za pomocą opcji Przekieruj z. Możesz również zastępować grupy przechwytujące za pomocą $1, $2, ... lub całe dopasowanie za pomocą $0. Pomaga to w dynamicznym określaniu celu. Szczegóły znajdziesz 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 docelowym adresem URL będzie https://apple.com/hello.
Dodatkowo możesz modyfikować teksty $1, $2, ... przed dokonaniem podstawień. Szczegóły znajdziesz w sekcji Przetwarzanie grup przechwytujących.
Możesz określić niestandardowy schemat URL, aby otworzyć aplikację. Oto przykłady aplikacji obsługujących głębokie linkowanie (deep linking):
- Figma:
figma://file/Twój_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/Twój_ID_Notatki - Slack:
slack://open
Aplikacja
Jeśli chcesz określić aplikację, w której chcesz otworzyć docelowy adres URL, użyj pola wyboru Aplikacja. Jest to dostępne tylko w systemie macOS.
Możesz otworzyć tylko aplikację obsługującą 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ć sposób przetwarzania przechwyconych grup, które można podstawić w opcji Przekieruj do za pomocą $1, $2...
Oto jak tworzyć grupy przechwytujące:
- Wildcard: Teksty dopasowane do
*i?są przechwytywane automatycznie. - Wyrażenie regularne: Przechwytywane są teksty dopasowane do części wzorca wewnątrz
().
Możesz wybrać jeden lub więcej z następujących procesów:
- Kodowanie/dekodowanie URL: Stosuje kodowanie procentowe lub dekodowanie do grupy przechwytującej. Na przykład, jeśli zakodujesz
https://example.com/hello, zostanie ono przekonwertowane nahttps%3A%2F%2Fexample.com%2Fhello. Dekodowanie działa w odwrotny sposób. - Kodowanie/dekodowanie Base64: Dekoduje/koduje tekst do formatu Base64. Na przykład możesz zakodować
hellodoaGVsbG8=i odkodować z powrotem dohello. - Zastąp wystąpienia: Zastępuje jeden lub więcej znaków w grupie, dopasowanych przez Wzorzec docelowy, Zamiennikiem. Na przykład, jeśli Grupa to
hello, Wzorzec docelowy tol, a Zamiennik toy, zostanie ona zmieniona 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. Załóżmy na przykład, że masz taką regułę:
- Przekieruj z:
https://example.com/(hello.*) - Przetwarzanie grup przechwytujących:
- Grupa:
$1 - Wzorzec docelowy:
.*(Wyrażenie regularne) - Zamiennik:
hello
- Grupa:
- Wykluczony wzorzec URL:
https://example.com/hello
W takim przypadku https://example.com/hello_world nie zostanie wykluczone, podczas gdy 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 do unikania pętli przekierowań lub wykluczania pewnych części witryny z przekierowania.
Możesz określić wykluczone wzorce URL, używając typu wzorca Wyrażenie regularne lub Wildcard.
Przykłady
Opcja Przykłady pozwala przetestować regułę przekierowania poprzez podanie przykładowych adresów URL. Dodając przykładowy adres URL, możesz sprawdzić, czy reguła działa zgodnie z oczekiwaniami przed jej faktycznym zastosowaniem.
Zaawansowane
- [DNR] Przekierowanie ramki głównej (Main Frame): Ta opcja jest dostępna tylko dla typu DNR. Pozwala określić, jak obsługiwać przekierowanie dla typu zasobu
main_frame. Dostępne opcje to:- Surowe (Raw): Przekierowuje ramkę główną na określony adres URL bez żadnych modyfikacji.
- Przez stronę pośrednią: Przekierowuje ramkę główną do strony pośredniej, która następnie przekierowuje do określonego docelowego adresu URL. Jest to przydatne do otwierania aplikacji za pomocą głębokiego linkowania, ponieważ strona pośrednia może obsłużyć bardziej złożoną logikę przekierowania.
Komentarze
Opcja Komentarze pozwala dodawać notatki lub uwagi dotyczące reguły przekierowania. Może to być przydatne do śledzenia, dlaczego utworzono konkretną regułę, lub do zapewnienia kontekstu innym osobom, które mogą przeglądać Twoje reguły.
Komentarze można pisać w następujących formatach:
- Zwykły tekst (Domyślny): Prosty tekst bez żadnego formatowania.
- Markdown: Możesz używać składni Markdown GitHub, w tym niektórych rozszerzeń, których GFM nie obsługuje. Możesz na przykład tworzyć nagłówki, listy, linki i inne elementy.
- AsciiDoc: Do formatowania komentarzy można używać składni AsciiDoc.
Wzorzec URL
Wzorce URL są używane do dopasowywania adresów URL w opcjach Przekieruj z, Wykluczone wzorce URL oraz Przetwarzanie grup przechwytujących. Aby je określić, możesz wybrać Symbol wieloznaczny (Wildcard) lub Wyrażenie regularne (Regular Expression).
Symbol wieloznaczny (Wildcard)
Symbol wieloznaczny (Wildcard) to prostszy typ wzorca, który pozwala na używanie * (dopasowuje wszystko) i ? (dopasowuje dowolny pojedynczy znak) jako symboli 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 znaków 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*.
W symbolach wieloznacznych można również używać podstawień, co oznacza, że można odwoływać się do fragmentów 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 wyniesie „hello”, a $2 „goodbye”. Dostępny jest również symbol $0, który odwołuje się do całego dopasowanego adresu URL.
Chociaż podstawianie jest funkcją wyrażeń regularnych, można go również używać w symbolach wieloznacznych, ponieważ RedirectWeb wewnętrzniej konwertuje symbole wieloznaczne na wyrażenia regularne.
Wyrażenie regularne (Regular Expression)
Wyrażenie regularne (Regex) to potężne narzędzie do dopasowywania wzorców w tekście, szeroko stosowane w programowaniu. Pozwala na zdefiniowanie konkretnego wzorca pasującego do zestawu ciągów znaków. Oto kilka przykładów:
- Aby dopasować
https://example.com/hello, możesz użyćhttps://example.com/.*. Dopasuje to dowolny ciąg znaków pohttps://example.com/. - Aby dopasować
https://example.com/search?q=hello, możesz użyćhttps://example.com/search\?q=(.*). Dopasuje to wartość parametruqi zapisze ją w grupie przechwytującej. Możesz następnie odwołać się do niej za pomocą$1w opcji Przekieruj do. - Aby dopasować dowolny adres URL zawierający słowo
blog, możesz użyć.*blog.*.
Do grup przechwytujących w opcjach Przekieruj do lub Zamiennik można odwoływać się za pomocą $1, $2, ... lub $0 dla całego dopasowania.
RedirectWeb jest napędzany przez silnik wyrażeń regularnych Apple.
Więcej informacji o składni Regex można znaleźć w zasobach takich jak RegExr.