Puncte:2

Eliminați hashmark (#) din URL-ul nginx și redirecționați

drapel in

Vreau să iau o adresă URL, să adaug un prefix și să elimin hashmark-ul din url. De exemplu, redirecționați de la http://localhost:8088/app1/#/hello la http://localhost:8088/apps/app1/hello.

Am încercat asta dar nu pare să funcționeze:

  locație /app1/ {
    rescrie ^([^#]*)([#])\/(.*) /apps$1$3 permanent;
  }

Se pare că are ceva de-a face cu hashmark. După cum pot trece de la http://localhost:8088/app1/q/hello la http://localhost:8088/apps/app1/hello cu asta:

  locație /app1/ {
    rescrie ^([^q]*)([q])\/(.*) /apps$1$3 permanent;
  }

Trebuie să fac ceva pentru a gestiona hashmark-ul într-o redirecționare?

vidarlo avatar
drapel ar
[Nu poți](https://stackoverflow.com/questions/3664257/why-is-the-hash-part-of-the-url-not-available-on-the-server-side). Nu este trimis niciodată la server.
Puncte:10
drapel jp

Nu poţi. Browserul nu trimite nimic după # la nginx. The # indică o Fragment de adresă URL care este procesat numai pe un client.

drapel in
...și pentru a fi clar, în consecință, gestionarea rutei pentru fragmente trebuie să se întâmple în codul dvs. javascript http://localhost:8088/app1/. Acesta este un subiect pentru stackoverflow, mai degrabă decât serverfault: https://stackoverflow.com/search?q=js+router

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.