반응형
vercel에 간단한 SPA 앱을 만들어서 배포했는데 아래와 같은 에러가 발생하였다.
test.com/about 같은 하위 URL로 접근했을 경우, 서버(vercel)는 해당 URL을 처리하는 방법을 모른다. SPA의 라우팅 처리가 아닌 해당 리소스를 찾으려고 하기 때문에 404 에러가 발생하는 것이다. 이럴 때는 vercel에 내 SPA 앱의 인덱스 경로를 설정해 주면 된다.
vercel rewrites를 참고해 vercel.json에 rewrite 설정을 하면 된다.
{
"rewrites": [{ "source": "/(.*)", "destination": "/" }]
}
위의 rewrites 방법은 단순하지만 단점이 있다. 어떤 이유로 이미지나 번들, html에 직접 접근하지 못한다. 이럴 경우에는 routes 설정을 한다.
{
"routes": [{ "src": "/[^.]+", "dest": "/", "status": 200 }]
}
https://vercel.com/docs/concepts/projects/project-configuration
반응형
'개발' 카테고리의 다른 글
Sentry onpromise 설치 및 vue 애플리케이션 설정 (0) | 2023.06.18 |
---|---|
자바스크립트 Vite Github octokit 세팅 에러 (0) | 2023.04.26 |
자바 벨리데이터(validator)과 리플렉션(reflection) (0) | 2023.03.15 |
vue 여러개의 값을 동시에 watch 하는 방법 (0) | 2022.12.13 |
git gone 원격에서 삭제된 로컬 브랜치들을 한번에 삭제하는 방법 (0) | 2022.12.10 |