server side rendering

  1. 라우팅: 먼저 브라우저나 서버로부터의 HTTP 요청이 Next.js 애플리케이션에 도달함. Next.js는 이 요청에 따라 적절한 페이지 컴포넌트를 렌더링하기 위해 내부적으로 라우팅을 수행한다.

  2. 페이지 렌더링 요청: 요청된 페이지에 대한 렌더링을 시작하기 위해 Next.js는 해당 페이지 컴포넌트 파일을 찾는다.

  3. getServerSideProps 호출: 페이지 컴포넌트에 getServerSideProps 함수가 정의되어 있는 경우, Next.js는 이 함수를 호출한다. 이 함수는 서버사이드에서 데이터를 가져오기 위해 사용된다.

  4. 데이터 가져오기: getServerSideProps 함수 내에서는 서버사이드에서 필요한 데이터를 가져오기 위한 비동기 로직을 실행한다. 이로 인해 데이터베이스 쿼리, 외부 API 호출 등의 작업이 수행될 수 다.

  5. 데이터 전달: getServerSideProps 함수에서 가져온 데이터는 해당 페이지 컴포넌트로 전달됩니다. 이 데이터는 페이지 컴포넌트의 props로 전달되어 렌더링에 사용된다..

  6. 페이지 렌더링: 마지막으로, 페이지 컴포넌트는 서버사이드에서 가져온 데이터를 사용하여 렌더링되고, 그 결과 HTML이 클라이언트로 전송된다.

그렇다면 이런걸 해주는 next.js의 서버는 어디에있나? Next.js의 server는 어디에 있나?