import type { NextConfig } from 'next' const nextConfig: NextConfig = { // Docker 배포용 standalone 빌드 output: process.env.NODE_ENV === 'production' ? 'standalone' : undefined, // API Gateway로 요청 프록시 async rewrites() { return [ { source: '/api/:path*', destination: `${process.env.NEXT_PUBLIC_API_URL ?? 'http://localhost:8080'}/api/:path*`, }, ] }, // 구 Grails URL → 새 Next.js 경로 리다이렉트 (DB의 URL 값 그대로 유지) async redirects() { return [ // ── 게시판 ────────────────────────────────── { source: '/board_:id', destination: '/board/:id', permanent: false }, // ── 결재 (TAM0020: brunch 타입별 → 신청 목록) ── { source: '/tam0020/brunch/:type', destination: '/tam/0020', permanent: false }, { source: '/tam0020', destination: '/tam/0020', permanent: false }, { source: '/tam0010', destination: '/tam/0010', permanent: false }, { source: '/tam0030', destination: '/tam/0030', permanent: false }, { source: '/tam0040', destination: '/tam/0040', permanent: false }, // ── 근무계획 ───────────────────────────────── { source: '/wplan0010', destination: '/wplan/0010', permanent: false }, { source: '/wplan0020', destination: '/wplan/0020', permanent: false }, { source: '/wplan0030', destination: '/wplan/0030', permanent: false }, // ── 근무시간 ───────────────────────────────── { source: '/wtime0010', destination: '/wtime/0010', permanent: false }, { source: '/wtime0030', destination: '/wtime/0030', permanent: false }, // ── 환경설정 ───────────────────────────────── { source: '/envset0010', destination: '/envset/users', permanent: false }, { source: '/envset0020', destination: '/envset/codes', permanent: false }, { source: '/envset0030/:path*', destination: '/envset/codes-view',permanent: false }, { source: '/envset0040', destination: '/envset/workcd', permanent: false }, { source: '/envset0050', destination: '/envset/menus', permanent: false }, // ── 비밀번호변경 ────────────────────────────── { source: '/main0020', destination: '/my/change-pw', permanent: false }, // ── FedEx ──────────────────────────────────── { source: '/fedex0010', destination: '/fedex/0010', permanent: false }, ] }, } export default nextConfig