/) 접근 시 특정 경로(/food) 렌더링하기 🚀Next.js 프로젝트에서 루트 경로(/)에 접근했을 때, 특정 경로(/food)의 내용을 렌더링하도록 설정하고 싶다면 어떻게 하면 될까요? 🤔 이 글에서는 next.config.js의 rewrites 기능을 활용하여 이를 간단하게 구현하는 방법을 소개합니다. 🔥
rewrites 설정 사용하기 ⚙️Next.js의 rewrites 기능을 사용하면 사용자가 루트 경로(/)로 접속했을 때 내부적으로 /food 페이지를 렌더링할 수 있습니다. 이 방식은 브라우저의 주소 표시줄에는 여전히 /가 남아 있으면서, 실제로는 /food 페이지의 내용을 보여주는 것이 특징입니다. 🎯
next.config.js 파일을 엽니다. 📂async rewrites() 함수를 추가합니다. 👇// next.config.js
module.exports = {
async rewrites() {
return [
{
source: '/', // 사용자가 '/'에 접근하면
destination: '/food', // '/food' 페이지의 내용을 렌더링
},
];
},
};
npm run dev/에 접근하면 URL은 변경되지 않지만, 내부적으로 /food 페이지가 렌더링됩니다. 🎭/가 유지되므로, 사용자 경험이 더욱 자연스럽습니다. 😊/ 페이지를 그대로 인식할 수 있어 SEO 측면에서도 유리합니다. 🔍rewrites를 사용하는 이유 💡일반적인 리다이렉트(redirects)와 달리, rewrites를 사용하면 /와 /food가 동일한 페이지로 인식되므로 검색 엔진이 중복 페이지로 간주하지 않습니다. 🧐
리다이렉트 없이 URL이 유지되므로 페이지 이동 시 깜빡임이나 불필요한 새로고침 없이 자연스럽게 동작합니다. 😎
컴포넌트 코드 변경 없이 next.config.js 설정만 추가하면 원하는 기능을 손쉽게 적용할 수 있습니다. 💪
Next.js에서 루트 경로(/)에 접근했을 때 특정 경로(/food)의 내용을 렌더링하고 싶다면, rewrites 설정을 활용하는 것이 가장 효과적인 방법입니다. 🚀
이 방법을 사용하면 브라우저 URL은 그대로 유지하면서도 /food 페이지의 내용을 보여줄 수 있어, SEO와 사용자 경험 모두를 고려한 깔끔한 해결책이 됩니다. 💯