Skip to main content

Aloitusopas

Tämä sivu kuvaa yleisiä käyttötapauksia sääntöjen luomiseen Redirect Web -sovelluksessa.

(Voit myös oppia sääntöasetusten yksityiskohdat Sääntöasetukset -sivulta.)

Tapaus 1: Avaa toinen verkkosivusto

Oletetaan, että olet riippuvainen Twitteristä, ja päätät meditoida Insight Timerissä aina, kun vahingossa avaat Twitterin. Luodaan sääntö sitä varten!

Vaihe 1. Määritä "Ohjaa kohteesta"

Ensin sinun tulee määrittää Ohjaa kohteesta -osio sovelluksen Muokkaa sääntöä -näytössä. Kohteet ovat URL-osoitteita, jotka alkavat https://twitter.com/.

Tässä tapauksessa voit määrittää seuraavan kuvion Wildcard -tilassa:

https://twitter.com/*

Wildcard-tilassa * tarkoittaa, että se vastaa mitä tahansa (= nolla tai useampi merkki).

Mutta odota. twitter.com nimettiin uudelleen x.com:ksi. Voit yksinkertaisesti korvata twitter.com:n x.com:lla, mutta kukaan ei tiedä, milloin uusi omistaja muuttaa mielensä ja palauttaa sen. Siksi kohdistetaan sekä twitter.com että x.com.

Tehdäksesi sen, vaihda Wildcardista Säännölliseen lausekkeeseen ja aseta tämä kuvioksi:

https://(twitter|x).com/.*
  • (twitter|x): se kohdistuu sekä twitteriin että x:ään. (| on nimeltään putki.)
  • .*: Se on sama kuin Wildcardin *. Tarkemmin sanottuna . tarkoittaa mitä tahansa merkkiä ja * tarkoittaa mitä tahansa ennen tätä symbolia toistettuna minkä tahansa määrän kertoja, mikä johtaa siihen, että se vastaa mitä tahansa.

Säännöllinen lauseke on hieman monimutkainen, mutta kun siihen tottuu, siitä tulee tehokas työkalu. Suosittelemme käyttämään RegExr -sivustoa leikkikenttänä analysoidaksesi, miten säännöllinen lausekekuviosi toimii.

note

Säännöllisissä lausekkeissa . kohdassa (twitter|x).com käsitellään myös mikä tahansa merkki. Siksi (twitter|x).com/.* vastaa myös esimerkiksi twitter1com/ tai x_com/.

Välttääksesi sen, voit muuttaa sen muotoon (twitter|x)\.com/.*. \ käytetään erikoismerkin pakoon.

Yleisessä internet-ympäristössä ei kuitenkaan ole tällaisia URL-osoitteita. Siksi voit jättää . erikoismerkiksi, jos haluat. Sääntösi on omaan käyttöösi, joten toteuta se parhaaksi katsomallasi tavalla.

Vaihe 2: Määritä "Ohjaa kohteeseen"

Määritä URL-osoite yksinkertaisesti seuraavasti:

https://insighttimer.com/saraauster/guided-meditations/calm

Nyt Redirect Web vie sinut meditaatioon, kun avaat Twitterin!

⬇️ Lataa sääntö

Tapaus 2: Poista kyselyparametrit URL-osoitteesta

Oletetaan, että example.com -sivuston URL-osoitteessa on kyselyparametri source=twitter, ja päätit poistaa sen anonymisoidaksesi itsesi.

Tässä tapauksessa Capturing Group Processing -vaihtoehto on helpoin tapa:

  • Ohjaa kohteesta: https://example.com/* (Wildcard)
  • Ohjaa kohteeseen: $0
  • Capturing Group Processing:
    • Ryhmä: $0
    • Prosessi: Korvaa esiintymät
      • Kohde: &?source=[^&]*
      • Korvaus: (ei mitään)
      • Tekstikuvio: Säännöllinen lauseke

⬇️ Lataa sääntö

Tämä sääntö toimii seuraavasti:

https://example.com/?source=twitter
↪ https://example.com/?

https://example.com/?hello=world&source=twitter&foo=bar
↪ https://example.com/?hello=world&foo=bar

Jos haluat poistaa lisää parametreja, lisää prosesseja.

Tapaus 3: Lisää kyselyparametreja URL-osoitteeseen

Sanotaan, että on olemassa verkkosivusto nimeltä example.com, joka näyttää oletuksena mobiilinäkymän, mutta pidät parempana sen työpöytänäkymää. Onneksi verkkosivusto tukee layout -kyselyparametria määrittääkseen, minkä asettelun verkkosivusto näyttää. Luodaan sääntö, joka lisää layout=desktop automaattisesti.

Ehkä ajattelet, että voisit määrittää sen seuraavasti:

  • Ohjaa kohteesta: https://example.com/.* (Säännöllinen lauseke)
  • Ohjaa kohteeseen: $0?layout=desktop

$0 viittaa kohde-URL-osoitteeseen. Jos yrität avata example.com/hello, sinut ohjataan osoitteeseen example.com/hello?layout=desktop. Tätä ominaisuutta kutsutaan sijoitukseksi.

tip

Sijoitus on käytettävissä myös Wildcard-tilassa, koska se muunnetaan sisäisesti säännölliseksi lausekkeeksi.

Näissä asetuksissa on kuitenkin muutama ongelma.

Ongelma 1: Ikuinen silmukka

Nykyinen asetus luo äärettömän uudelleenohjaussilmukan, koska https://example.com/.* kohdistuu myös osoitteeseen https://example.com/hello?layout=desktop.

Tässä tapauksessa voit määrittää poissuljetun URL-kuvion, joka sallii pääsyn ilman uudelleenohjausta, kuten tämä säännöllisellä lausekkeella:

.*[&?]layout=[^&]*.*
  • .*: Vastaa mitä tahansa
  • [&?]: Vastaa joko & tai ?
  • [^&]*: Vastaa mitä tahansa paitsi &

Ongelma 2: Ei voi käsitellä olemassa olevia parametreja oikein

Jos kohde-URL-osoitteessa on jo muita kyselyparametreja, kuten example.com/hello?theme=dark, kohde on example.com/hello?theme=dark?layout=desktop (URL-osoitteessa on kaksi ?), mutta parametrit voi yhdistää vain &:llä. ? erikoismerkkinä on sallittu vain parametrien alussa. Siksi sitä ei käsitellä kelvollisena parametrina.

Tässä tapauksessa muuta asetuksia seuraavasti:

  • Ohjaa kohteesta: (https://example.com/[^?]*)(\\?(.*))?
  • Ohjaa kohteeseen: $1?layout=desktop&$3

Katsotaanpa askel askeleelta.

  • (https://example.com/[^?]*): Vastaa osaa ennen ? -merkkiä.
    • [^?]* vastaa mitä tahansa paitsi ?.
    • Tämä on kääritty () -merkkien sisään, joten voit viitata siihen $1:llä myöhemmin.
  • (\\?(.*))?: Vastaa merkkijonoa, joka alkaa ?:llä, mikä tarkoittaa kyselyparametreja.
    • Tämä vastaa myös tyhjää merkkijonoa kuvion lopussa olevan ? -kvantifikaattorin avulla, joka vastaa nolla tai yhden kerran.
    • Ulompaan () ja sisempään () voidaan viitata $2:lla ja $3:lla myöhemmin.

RegExr voi auttaa sinua ymmärtämään yksityiskohdat.

note

RegExr näyttää virheen, kun et pakene / -merkkiä \ -merkillä. Vaikka voit paeta sitä, se ei ole pakollista, koska Redirect Web käyttää eri Apple-moottoria, joka ei vaadi pakoa.

Tämä ei ole täydellinen ratkaisu, as it redirects example.com/hello to example.com/hello?layout=desktop&, which includes an unnecessary & at the end of the URL. It's not a big deal in general, but if you wish to remove it, you can use Capturing Group Processing.

Yhteenvetona, tämä on lopullinen tulos:

  • Ohjaa kohteesta: (https://example.com/[^?]*)((\\?(.*))?) (Säännöllinen lauseke)
  • Ohjaa kohteeseen: $1?layout=desktop$3
  • Poissuljettu URL-kuvio: .*[&?]layout=[^&]*.* (Säännöllinen lauseke)
  • Capturing Group Processing:
    • Ryhmä: $3
    • Prosessi: Korvaa esiintymät
      • Kohde: \\?(.*)
      • Korvaus: &$1

⬇️ Lataa sääntö

Tämä on vain esimerkki. Voit myös luoda useita sääntöjä kunkin ongelman käsittelemiseksi. Se voi olla paljon yksinkertaisempaa.