mediumFrontend

How do you handle redirects and rewrites in Next.js?

813 views
01

Understand the problem

Config-based, middleware, and in-render redirects.

nextjsredirectsrewritesmiddleware
02

Attempt it yourself

Sketch your approach before reading the solution — that's what interviews test.

Stuck? AI Nudge Available

Get a conceptual hint to guide your logic without spoiling the final implementation.

03

Study the solution

The solution is waiting

Give it an honest attempt first — then compare your thinking with the full walkthrough.

04

Read the code

Config rules + conditional middleware
// next.config.js — static
async redirects() { return [{ source: '/blog/:slug', destination: '/posts/:slug', permanent: true }]; }
async rewrites() { return [{ source: '/api/:p*', destination: 'https://backend/:p*' }]; }  // proxy

// middleware.ts — conditional
import { NextResponse } from 'next/server';
export function middleware(req) {
  if (req.geo?.country === 'FR') return NextResponse.rewrite(new URL('/fr', req.url));
}
05

Join the discussion

Discussion (0)

Sign in to join the discussion.

No responses yet. Be the first to share what you think.