상황
SpringBoot 개발 도중 local에서 프로젝트 Run 하면서 Postman으로 API 테스트 하는 것은 아주 잘 되는데 서버에 jar 파일 배포 후 API URI로 API 호출을 하면 404 Not found가 뜨는 상황이 발생하였다.
우선 가장 먼저 살펴보아야 할 것은 URI에 오타가 없는지 이다. 필자는 죽어도 오타는 없어서 여러 방법을 동원해 해결하였다.
이번 오류에서 가장 이상했던 점은.. 특정 API는 되고 특정 API는 Not found가 뜨는 점이었다.. jar 파일이나 DB 문제가 아니라 판단하였기에 더욱 이상했다. 🥺
해결 방법
1. 우선 로컬 환경에서 빌드한 jar 파일을 서버로 전송하는 과정에서 "덮어쓰기"를 사용하고 있었는데, 이부분을 바꾸었다.
서버의 jar 파일을 삭제하고 로컬의 jar 파일을 옮겨주는 식으로 작업을 하였다.
2. 이후 서버에서 jar 파일을 실행하였다.
3. 로그를 보면서 확인한 결과 아래와 같이 나왔다.
cat nohup.out
이 과정에서 서버 IP주소 접근은 "연결 거부"가 떴다.
4. 8080 포트를 사용하는 프로세스를 모두 삭제하기 위해 아래 명령어를 입력하였다.
sudo fuser -k -n tcp 8080
5. 이후 다시 서버에서 jar 파일을 실행하여 해결하였다.
우선은 생각만큼 서버에서 빠르게 jar 파일이 실행되지 않기 때문에 조금 시간 텀을 두면서 진행하길 바란다. 추가로 nohup.out 로그를 계속 모니터링하는 것을 권장한다.
'Error' 카테고리의 다른 글
[오류 해결] SLF4J: Class path contains multiple SLF4J bindings. 해결 (0) | 2024.02.13 |
---|---|
[오류 해결] CICD 구축 중 CodeDeploy 오류 (0) | 2024.02.09 |
[오류 해결] 스프링Spring(Java) (1) | 2024.01.28 |