728x90

next.js를 next install 하여

 

out 폴더를 그대로 배포하면 

 

새로고침 후 index페이지로 이동된다거나

 

~~~/register 와 같이 페이지에 접속했을때도 index페이지가 보여지는 등의 이슈가 발생한다

 

이를 해결하기 위해서는

 

node 서버에서 next.js앱을 실행해주어야한다.

 

node server 설정은

 

const { application } = require('express');
const express = require('express');
const next = require('next');

const dev = process.env.NODE_ENV !== 'production';
const nextApp = next({ dev });
const handle = nextApp.getRequestHandler();

nextApp
    .prepare()
    .then(() => {
        const app = express();

        app.get('*', (req, res) => {
            return handle(req, res);
        });

        app.listen(3000, err => {
            console.log('>>> server is ready on port 3000');
        });
    })
    .catch(err => {
        console.log(err);
        process.exit();
    });

 

이렇게 간단히 할수있고

 

실행은

 

node server.js 이다

 

pm2를통해 무중단 배포를 할때는

 

// package.json

"start": node server.js

 

// 실행

pm2 start npm --name 'next' -- start

728x90
반응형