Files
aycanurmimarl-k/middleware.ts
2026-04-17 11:16:00 +03:00

29 lines
777 B
TypeScript

import { NextResponse } from 'next/server'
import type { NextRequest } from 'next/server'
export function middleware(request: NextRequest) {
const { pathname } = request.nextUrl
// Check if the path is under /admin
if (pathname.startsWith('/admin')) {
// Allow access to login page
if (pathname === '/admin/login' || pathname.startsWith('/admin/api')) {
return NextResponse.next()
}
// Check for admin session cookie
const adminSession = request.cookies.get('admin_session')?.value
if (!adminSession || adminSession !== 'authenticated') {
return NextResponse.redirect(new URL('/admin/login', request.url))
}
}
return NextResponse.next()
}
// Match only admin paths
export const config = {
matcher: ['/admin/:path*'],
}