Setări reguli
Această pagină oferă informații detaliate despre fiecare setare din ecranul Editare regulă din aplicația Redirect Web.
Opțiuni
Tip
Specificați opțiunea Tip pentru a controla modul în care aplicația gestionează redirecționarea. Puteți alege dintre acestea:
- Original (Implicit)
- Acesta utilizează API-uri web tradiționale pentru a controla redirecționarea. În plus, utilizează API-ul Tabs ca soluție de rezervă.
- În Firefox, utilizează API-ul WebRequest pentru a gestiona redirecționarea.
- Puteți utiliza toate opțiunile, cu excepția Tipuri de resurse și Metode de solicitare.
- Acesta este mai lent decât tipul Declarativ și poate cauza solicitări de rețea suplimentare.
- Acesta utilizează API-uri web tradiționale pentru a controla redirecționarea. În plus, utilizează API-ul Tabs ca soluție de rezervă.
- DNR (Experimental pentru Safari):
- Acest tip funcționează mult mai rapid decât tipul Original, deoarece nu inițiază o solicitare de rețea pentru URL-ul sursă.
- Acest lucru vă permite să specificați Tipuri de resurse și Metode de solicitare.
- ⚠️ Nu puteți utiliza unele opțiuni, cum ar fi Procesarea grupurilor de captură și Modele URL excluse, deoarece acestea nu au fost încă acceptate de API-ul DNR.
- ⚠️ În Safari, în prezent nu puteți include bare verticale (
|) în modelul dvs. de expresie regulată. Detalii - ⚠️ Deoarece API-ul DNR din Safari are încă unele probleme, considerăm că este încă o funcționalitate experimentală pentru Safari. Puteți găsi lista tuturor problemelor cunoscute aici.
Redirecționare de la
Opțiunea Redirecționare de la vă permite să specificați un model URL al paginilor web de la care doriți să redirecționați. Puteți alege fie Joker, fie Expresie regulată.
De exemplu, dacă specificați https://example.com/* cu Joker, se potrivește cu https://example.com/ sau https://example.com/hello.
În opțiunea Redirecționare către, puteți face referire la întreaga potrivire folosind $0 sau la potriviri parțiale folosind $1, $2, ... Verificați detaliile în Model URL pe această pagină.
Tipuri de resurse
Opțiunea Tipuri de resurse vă permite să specificați categoriile de solicitări web, cum ar fi imagini, JavaScript-uri și foi de stil, la care se aplică regula.
De exemplu, dacă setați script, puteți redirecționa fișierele JavaScript încărcate de paginile web.
În prezent, sunt disponibile următoarele:
main_frame, sub_frame, stylesheet, script, image, font, xmlhttprequest, ping, media, websocket, other
Setarea implicită este main_frame, care este pagina de nivel superior încărcată într-o filă.
Vă rugăm să verificați detaliile fiecărui tip de resursă în documentele web mdn.
Metode de solicitare
Opțiunea Metode de solicitare vă permite să setați metodele HTTP țintă ale URL-ului sursă.
Toate metodele sunt setate implicit.
Vă rugăm să verificați detaliile fiecărei metode în documentele web mdn.
În Safari, această opțiune ar putea să nu fie disponibilă, deoarece implementarea Apple pentru tipul DNR nu pare să o gestioneze în prezent. Am trimis feedback către Apple ca FB14502272.
Browsere țintă
Opțiunea Browsere țintă vă permite să specificați la ce browser ar trebui sau nu ar trebui să se aplice regula.
- Există 2 tipuri de browsere pe care le puteți alege:
- Browsere pe care le puteți alege implicit: Puteți alege Safari, Chrome, Firefox, Edge, Opera, Arc, Brave și Vivaldi implicit. Aceasta nu diferențiază variantele aceluiași browser, cum ar fi Safari și Safari Technology Preview.
- Browsere specificate de utilizator: Atingând butonul Adăugare din popover, puteți selecta orice browser, altul decât Safari sau Safari Technology Preview, care are extensia Redirect Web instalată.
- Caseta de selectare Toate, cu excepția celor selectate vă permite să vizați fiecare browser, cu excepția celor pe care le-ați ales.
Redirect Web nu poate diferenția dacă browserul este Safari sau Safari Technology Preview, deoarece aplicația verifică procesul părinte al extensiei pentru a-l detecta, dar aceste două browsere partajează același proces părinte (/sbin/launchd).
Redirecționare către
Opțiunea Redirecționare către specifică un URL de destinație către care doriți să redirecționați, de la URL-ul sursă potrivit cu opțiunea Redirecționare de la. Puteți, de asemenea, să substituiți grupurile de captură cu $1, $2, ... sau întreaga potrivire cu $0. Acestea vă ajută să specificați dinamic destinația. Verificați detaliile în Model URL pe această pagină.
De exemplu, dacă setați următoarea regulă:
- Redirecționare de la:
https://google.com/*(Joker) - Redirecționare către:
https://apple.com/$1
și se potrivește cu https://google.com/hello, atunci URL-ul de destinație va fi https://apple.com/hello.
În plus, puteți modifica textele $1, $2, ... înainte de a face substituții. Verificați secțiunea Procesarea grupurilor de captură pentru detalii.
Puteți specifica o schemă URL personalizată pentru a deschide o aplicație. Acestea sunt exemple de aplicații care acceptă 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
Aplicație
Dacă doriți să specificați o aplicație pe care doriți să o deschideți URL-ul de destinație, utilizați caseta combinată Aplicație. Aceasta este disponibilă numai pe macOS.
Puteți deschide doar o aplicație care acceptă App Sandbox. De asemenea, asigurați-vă că aplicația acceptă deschiderea URL-ului pe care doriți să-l deschideți.
Procesarea grupurilor de captură
Opțiunea Procesarea grupurilor de captură vă permite să specificați cum să procesați grupurile de captură pe care le puteți substitui în opțiunea Redirecționare către cu $1, $2...
Acestea sunt modurile de a crea grupuri de captură:
- Joker: Textele potrivite cu
*și?sunt capturate automat. - Expresie regulată: Textele potrivite cu o parte a modelului din interiorul
()sunt capturate.
Puteți alege unul sau mai multe dintre următoarele procese:
- Codificare/Decodificare URL: Aceasta aplică codificarea procentuală sau decodificarea unui grup de captură. De exemplu, dacă codificați
https://example.com/hello, este convertit înhttps%3A%2F%2Fexample.com%2Fhello. Decodificarea funcționează invers. - Codificare/Decodificare Base64: Aceasta decodifică/codifică un text în Base64. De exemplu, puteți codifica
helloînaGVsbG8=, și decodifica înapoi înhello. - Înlocuire apariții: Aceasta înlocuiește unul sau mai multe caractere dintr-un grup, potrivite de o Țintă, cu o Înlocuire. De exemplu, dacă Grupul este
helloși Ținta estelși Înlocuirea estey, este modificat înheyyo.
Aceasta este pentru procesarea fiecărui grup de captură și nu afectează URL-urile care sunt excluse de Modele URL excluse. De exemplu, să spunem că aveți această regulă:
- Redirecționare de la:
https://example.com/(hello.*) - Procesarea grupurilor de captură:
- Grup:
$1 - Țintă:
.*(Expresie regulată) - Înlocuire:
hello
- Grup:
- Model URL exclus:
https://example.com/hello
În acest caz, https://example.com/hello_world nu va fi exclus, în timp ce https://example.com/hello va fi exclus.
Modele URL excluse
Opțiunea Modele URL excluse vă permite să specificați URL-urile care nu sunt redirecționate. Acest lucru poate fi util pentru a evita buclele de redirecționare sau pentru a exclude anumite părți ale unui site web de la redirecționare.
Puteți specifica modele URL excluse utilizând fie tipuri de model Expresie regulată, fie Joker.
Exemple
Opțiunea Exemple vă permite să testați regula de redirecționare furnizând URL-uri eșantion. Adăugând un URL eșantion, puteți verifica dacă regula funcționează conform așteptărilor înainte de a o aplica efectiv.
Comentarii
Opțiunea Comentarii vă permite să adăugați orice note sau comentarii despre regula dvs. de redirecționare. Acest lucru poate fi util pentru a ține evidența motivului pentru care ați creat o anumită regulă sau pentru a oferi context altor persoane care ar putea vizualiza regulile dvs.
Puteți scrie comentarii în următoarele formate:
- Text simplu (Implicit): Text simplu fără formatare.
- Markdown: Puteți utiliza sintaxele Markdown de la GitHub, inclusiv unele extensii pe care GFM nu le acceptă. De exemplu, puteți crea titluri, liste, link-uri și multe altele.
- AsciiDoc: Puteți utiliza sintaxele AsciiDoc pentru a formata comentariile dvs.
Model URL
Modelele URL sunt utilizate pentru a potrivi URL-uri în opțiunile Redirecționare de la, Modele URL excluse și Procesarea grupurilor de captură. Pentru a le specifica, puteți alege fie Joker, fie Expresie regulată.
Joker
Joker este un tip de model mai simplu care vă permite să utilizați * (se potrivește cu orice) și ? (se potrivește cu orice caracter unic) ca jokeri. Iată câteva exemple:
- Pentru a potrivi
https://example.com/hello, puteți utilizahttps://example.com/*. Acesta va potrivi orice șir dupăhttps://example.com/. - Pentru a potrivi
https://example.com/search?q=hello, puteți utilizahttps://example.com/search?q=*. Acesta va potrivi orice valoare pentru parametrulq. - Pentru a potrivi orice URL care conține cuvântul
blog, puteți utiliza*blog*.
Puteți utiliza și substituția în Joker, ceea ce înseamnă că puteți face referire la porțiuni ale URL-ului potrivit folosind $1, $2, etc. De exemplu, dacă utilizați https://example.com/*-world-*, și URL-ul este https://example.com/hello-world-goodbye, atunci $1 ar fi „hello” și $2 ar fi „goodbye”. $0 este, de asemenea, disponibil pentru a face referire la întregul URL potrivit.
Deși substituția este o funcționalitate a expresiilor regulate, o puteți utiliza și pentru Joker, deoarece Redirect Web convertește intern Joker în expresie regulată.
Expresie regulată
Expresia regulată (Regex) este un instrument puternic pentru potrivirea modelelor în text și este, de asemenea, utilizată pe scară largă în programare. Vă permite să definiți un model specific care se potrivește cu un set de șiruri de caractere. Iată câteva exemple.
- Pentru a potrivi
https://example.com/hello, puteți utilizahttps://example.com/.*. Acesta va potrivi orice șir dupăhttps://example.com/. - Pentru a potrivi
https://example.com/search?q=hello, puteți utilizahttps://example.com/search\?q=(.*). Acesta va potrivi valoarea parametruluiqși o va stoca într-un grup de captură. Puteți apoi să o referențiați folosind$1în opțiunea Redirecționare către. - Pentru a potrivi orice URL care conține cuvântul
blog, puteți utiliza.*blog.*.
Puteți face referire la grupurile de captură în Redirecționare către sau Înlocuire utilizând $1, $2, ... sau $0 pentru a face referire la întreaga potrivire.
Redirect Web este alimentat de motorul Regex de la Apple.
Mai multe informații despre sintaxa Regex pot fi găsite în resurse precum RegExr.