Barra final solo en la raíz de idioma (/es/), resto de rutas sin barra

trailingSlash true ponía barra en todo (/es/content-creators/). Se pasa a
skipTrailingSlashRedirect + normalización en middleware: raíz de idioma /es → /es/
(con barra), y cualquier sub-ruta con barra final se redirige sin ella
(/es/x/ → /es/x). Sin bucles. Las /api quedan fuera del middleware (sin 308).
El redirect del logout apunta a /es/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-14 15:36:13 +00:00
parent d0490e06fe
commit 434011624c
6 changed files with 33 additions and 6 deletions
+1 -1
View File
@@ -38,7 +38,7 @@ export function LoginForm() {
// Navegación completa (no del lado cliente): fuerza que el servidor
// re-renderice el layout/cabecera con la sesión nueva. Con router.push
// el layout persiste y la cabecera seguía mostrando "Conectar".
window.location.assign(`/${locale}${data.needsSelection ? '/select-account/' : '/my-account/'}`)
window.location.assign(`/${locale}${data.needsSelection ? '/select-account' : '/my-account'}`)
return
} else {
const key = (ERROR_KEYS as readonly string[]).includes(data.error ?? '') ? data.error! : 'genericError'