URL-urile cu hash sunt o PROBLEMĂ MAJORĂ:
Cum văd crawlerele URL-urile cu hash:
- URL-ul tău:
example.com/#/products/shoes - Ce vede crawlerul:
example.com/ - Toate rutele cu hash = aceeași pagină pentru crawlere
Soluția - folosește History API:
// Înainte (rutare cu hash)
<Route path="/#/products/:id" />
// După (istoric browser)
<Route path="/products/:id" />
// Configurează React Router
<BrowserRouter>
<Routes>
<Route path="/products/:id" element={<Product />} />
</Routes>
</BrowserRouter>
Configurare server necesară:
# nginx - servește index.html pentru toate rutele
location / {
try_files $uri $uri/ /index.html;
}
Prioritate: Acesta este chiar mai important decât prerandarea. URL-urile cu hash înseamnă că crawlerii literalmente nu pot distinge paginile tale.
Rezolvă întâi URL-urile, apoi implementează prerandarea.