유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

Next.js Middleware Is DEPRECATED! (Here is why)

tobi tackles tech

2025. 10. 17.

0

#frontend
#backend
  • Next.js 16부터 기존 미들웨어 기능이 더 이상 존재하지 않으며, middleware.ts 파일은 일반 파일로 인식됩니다. 🚫
  • 미들웨어는 "proxy"로 이름이 변경되었으며, 이는 단순한 이름 변경이 아니라 파일의 역할과 목적을 명확히 하기 위함입니다. 🎯
  • Next.js는 "proxy" 파일(이전 미들웨어)에서 인증(authentication) 로직을 처리하는 것을 권장하지 않습니다. 🛡️
  • 인증 로직을 "proxy"에 두지 말아야 하는 이유로는 단일 실패 지점(CVE 취약점 발생 가능성)과 잘못된 설정 시 정적 자산에도 실행되어 발생하는 성능 저하 문제가 있습니다. 🚨
  • "미들웨어"라는 용어는 Express.js 사용자들에게 혼란을 주었으며, Next.js는 여러 실행 컨텍스트(서버 액션, 서버 컴포넌트 등)와 런타임(Edge, Node)을 가지므로 전통적인 미들웨어 개념과 맞지 않습니다. 🤯
  • "proxy" 파일의 주된 역할은 라우팅 인프라 및 기본적인 네트워크 처리이며, 무거운 작업이나 복잡한 로직 처리에 사용되어서는 안 됩니다. 🛣️
  • 인증 검사는 "proxy" 파일 대신, 특정 서버 액션이나 데이터 접근 계층과 같이 해당 로직이 실제로 트리거되는 실행 컨텍스트에서 직접 수행해야 합니다. 🔒
  • 인증 로직의 중복 호출을 방지하기 위해 react cache 함수를 활용할 수 있습니다. ♻️

Recommanded Videos