» »

Nginx - Kaj naredi reqularni izraz ~^

Nginx - Kaj naredi reqularni izraz ~^

HotBurek ::

Dobro jutro.

Evo, fantje in dekline. Tokrat fprašanje na temo nginx config.

Kakšna je razlike, z ali brez, "~^"?

Dva primera:
# primer ena
location ~^/test.html { }

# primer dva
location /test.html { }

Vse kar pa bi rad je, da vse requeste, ki se začnejo z https://abc.cum/test.html, "pobere" notri.

Se pravi:
https://abc.cum/test.html
https://abc.cum/test.html?property=value
itn.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
  • spremenilo: HotBurek ()

kow ::

Zgodovina sprememb…

  • spremenil: kow ()

blich ::

Za regex stvari jaz zlorabljam ChatGPT, probaj mu dati oba regexa in ti bo spisal razliko :)

mr_chai ::

Primer 1: tilda ~ pove nginx-u, da vse kar sledi je case sensitive regex match. ^ je začetek stringa

Primer 2: nginx uporabi direktno primerjavo stringov


Probaj:


 location  ~ ^/test.html(.*) { }

Zgodovina sprememb…

  • spremenilo: mr_chai ()

mr_chai ::

Ah, mislm da je tkole bolj prav. Moraš še piko eskejpat.
location  ~ ^/test\.html.* { }

c3p0 ::

Povedano drugače, če bi dal ~ za regex in brez ^ bi matchal string kjerkoli v URL, tako pa le začetek.

kow ::

Mislim, da ima mr_chai prav. Sam se prilepil napacen link, ker nisem bil pozoren in sem videl "^~", namesto "~^".
Malo visje v linku (configuring locations) pise:

"A regular expression is preceded with the tilde (~) for case-sensitive matching, or the tilde-asterisk (~*) for case-insensitive matching." Tako, da ja, manjka presledek.

HotBurek ::

Hvala za obrazložitev.

Včeraj, ko sem imel "~^" na začetku location-a, mi je nginx -t javil error, da znotraj takega location-a med drugim ne morem uporabit proxy_pass, kot vzrok pa je bil navede uporaba regular expression-a.

Tako da sem tisto odstranil in imam sedaj brez in dela.

Danes pa te napake ne morem več ponovit. Škoda. Bi moral včeraj prekopirat tisto napako in jo dat v prvi post.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window

Zgodovina sprememb…

  • spremenilo: HotBurek ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Regexp izraz za filtriranje imen datotek (strani: 1 2 3 )

Oddelek: Programiranje
11615127 (4680) GupeM
»

Avtentikacija - najboljsa praksa?

Oddelek: Izdelava spletišč
212754 (2119) techfreak :)
»

[JS] Event, ko se stran naloži po "back" gumbu?

Oddelek: Programiranje
292897 (2165) Spura
»

Javascript:sprememba/naložitev nove slike v DIV

Oddelek: Izdelava spletišč
142781 (2616) JayKay
»

makro

Oddelek: Programiranje
81224 (1049) draganm1

Več podobnih tem