diff --git a/docs/advanced-features/i18n-routing.md b/docs/advanced-features/i18n-routing.md index 0a55f52ffd69..2dbe239805aa 100644 --- a/docs/advanced-features/i18n-routing.md +++ b/docs/advanced-features/i18n-routing.md @@ -170,24 +170,19 @@ import { NextRequest, NextResponse } from 'next/server' const PUBLIC_FILE = /\.(.*)$/ -const stripDefaultLocale = (str: string): string => { - const stripped = str.replace('/default', '') - return stripped -} - export function middleware(request: NextRequest) { const shouldHandleLocale = !PUBLIC_FILE.test(request.nextUrl.pathname) && !request.nextUrl.pathname.includes('/api/') && request.nextUrl.locale === 'default' - return shouldHandleLocale - ? NextResponse.redirect( - `/en${stripDefaultLocale(request.nextUrl.pathname)}${ - request.nextUrl.search - }` - ) - : undefined + if (shouldHandleLocale) { + const url = request.nextUrl.clone() + url.pathname = `/en${request.nextUrl.pathname}` + return NextResponse.redirect(url) + } + + return undefined } ```