본문 바로가기

main/Server

[CentOS 7] React build 파일 Node express에 배포하기

먼저 client코드가 저장되어 있는 React 프로젝트에서 build를 해준다.

yarn build 
 or
npm run build

둘 중 어떤 방식이라도 상관 없음

 

완료되면 React 프로젝트에 build/ 폴더가 생긴다.

 

이 build 폴더의 경로를 server인 Node 프로젝트에 입력해줘야 한다.

나는 그 전에 일단 build 폴더를 복사해서 Node 프로젝트에 붙여줬다.

cp -r build/ ../server/
# 폴더 복사할 땐 -r 을 붙인다. [복사할 폴더] [복사될 경로]

 

Node의 app.js에서 static 경로로 build/를 추가해준다.

app.use(express.static(path.join(__dirname, 'build')));
app.get('*', function (req, res) {
  res.sendFile(path.join(__dirname, 'build/index.html'));
});

이때 app.get에서 '*'로 지정해줘야 url의 모든 하위 라우팅을 React에서 받아서 처리할 수 있다.

 

 

pm2를 stop -> start 해 준다. (혹은 npm start로 서버를 시작해준다.)

그리고 IP로 접속해 보면 웹에서 잘 나오는 걸 확인할 수 있음!