From 4f55f36bcdae4d8cd6b7e2455c6f0ee3deb930d3 Mon Sep 17 00:00:00 2001 From: chpark Date: Sat, 25 Apr 2026 02:58:25 +0900 Subject: [PATCH] =?UTF-8?q?fix(middleware):=20=EC=A0=95=EC=A0=81=20?= =?UTF-8?q?=EC=9E=90=EC=82=B0(.svg=20=EB=93=B1)=EC=9D=84=20=EC=9D=B8?= =?UTF-8?q?=EC=A6=9D=20=EB=A6=AC=EB=8B=A4=EC=9D=B4=EB=A0=89=ED=8A=B8?= =?UTF-8?q?=EC=97=90=EC=84=9C=20=EC=A0=9C=EC=99=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/middleware.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/middleware.ts b/src/middleware.ts index 87dac87..19a4179 100644 --- a/src/middleware.ts +++ b/src/middleware.ts @@ -5,11 +5,16 @@ export function middleware(request: NextRequest) { const { pathname } = request.nextUrl; // 인증 불필요 경로 - const publicPaths = ["/login", "/api/auth/login", "/_next", "/favicon.ico"]; + const publicPaths = ["/login", "/api/auth/login", "/_next", "/favicon.ico", "/icon.svg"]; if (publicPaths.some((p) => pathname.startsWith(p))) { return NextResponse.next(); } + // 정적 자산(이미지/폰트 등)은 인증 면제 + if (/\.(svg|png|jpg|jpeg|gif|webp|ico|woff2?|ttf|otf|css|js|map)$/i.test(pathname)) { + return NextResponse.next(); + } + // 세션 쿠키 확인 const sessionCookie = request.cookies.get("plm-session"); if (!sessionCookie && !pathname.startsWith("/api")) {