Am avut probleme cu această configurație nginx și, după ce am căutat acest site, mă întreb dacă este chiar posibil.
Am o aplicație foarte simplă cu o singură pagină, cu următoarea rutare:
Server {
asculta 80 default_server;
rădăcină /var/www/html;
Locație / {
try_files $uri $uri/ /index.html;
}
}
SPA (un site Gatsby, dacă asta contează) deservit de această configurație conține rute precum domain.com/about
și domain.com/about/some-page
care servesc un anumit conținut. Cu toate acestea, există o versiune mai veche a site-ului web care nu era un SPA și are pagini asemănătoare domain.com/about.html
și domain.com/about.html#some-page
, iar acestea servesc, respectiv, conținut echivalent.
Chiar mi-ar plăcea să pot redirecționa domain.com/about.html
> domain.com/about
și domain.com/about.html#some-page
> domain.com/about/some-page
astfel încât vechile link-uri către site-ul care sunt în lume încă merg pe ruta corectă a SPA, dar toate încercările mele de a crea rescrieri fie returnează un 404, fie direct înapoi la rădăcină.
Este posibil să rescrieți ambele adrese URL (deci domain.com/about.html
> domain.com/about
) și, de asemenea, redirecționează adresa URL la /index.html
deci funcționează ca un SPA?