Puncte:2

nginx rute diferite pentru / și /*

drapel us

Aș dori să fac traseul / la o șosetă și /(.*) la b.ciorap.

am incercat

    Locație / {
        proxy_pass http://unix:/tmp/a.sock;
        proxy_read_timeout 30;
        proxy_connect_timeout 30;
        proxy_redirect dezactivat;
        proxy_set_header Gazdă $gazdă;
        proxy_set_header X-Real-IP $adresă_la distanță;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $schema;
    }
    locație ~ /(.*) {
        proxy_pass http://unix:/tmp/b.sock;
        proxy_read_timeout 30;
        proxy_connect_timeout 30;
        proxy_redirect dezactivat;
        proxy_set_header Gazdă $gazdă;
        proxy_set_header X-Real-IP $adresă_la distanță;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $schema;
    }

cu ordine diferită de asemenea.

Se poate realiza acest lucru cu nginx, dacă da, cum?

Părerea mea este, conform documentației, orice se termină cu a / presupune un wildcard după / iar ruta simplă fără regex are prioritate.

În esență, backend-ul este activat b.ciorap are o definiție a rutei /:termen sau /{termen} în funcție de libră de rutare pe care o utilizați, dar nu are un handler pentru /. Probabil că vă gândiți „deci adăugați un handler pentru / și numiți o zi". S-ar putea să fac asta, dar este o soluție. Aș dori o șosetă a manevra /.

Deci, din nou, se poate face acest lucru cu nginx și cum?

Richard Smith avatar
drapel jp
Expresia dvs. regulată `/(.*)` se potrivește și cu `/`.
Gerard H. Pille avatar
drapel in
Ați încercat să înlocuiți „location /” cu „location ~ ^/$”?
Puncte:4
drapel cn

Utilizați potrivirea exactă pentru pagina de pornire, de ex. locație = / { ⦠}. The locație / { ⦠} se va aplica pentru restul paginilor.

Potrivirea exactă (cu semnul egal) are prioritate față de locația prefixului (fără semnul egal).

Paul avatar
drapel cn
IIRC, ordinea este `=` unde `nginx` se oprește imediat procesarea, apoi regex, în sfârșit o potrivire. Cred că configurația originală din întrebare se potrivește întotdeauna pe regex.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.