

인텔리제이를 이용해 프로젝트를 로컬에 세팅하려고 톰캣 서버를 올리고 HTTPs port를 8443으로 설정했는데, Address localhost:8080 is already in use 에러가 발생했다. 8080에 연결하라고 한 적이 없는데 왜 8080이 이미 사용 중이라는 걸까? server.xml 을 열어보자.


server.xml 을 확인해보니 HTTP를 만드는 부분은 주석처리가 돼있고 HTTPS로 만드는 부분만 활성화가 돼있었다.
Connector executor port (8080, HTTP) -> redirectPort (8443, HTTPS) -> Connector port (8443, HTTPS) 의 과정으로 읽는 것 같은데, 가장 앞단인 HTTP 부분이 주석처리 돼있으니 tomcat의 기본 포트인 8080로 http가 연결됐다.
그래서 지금 PC에서 어떤 프로그램이 포트 8080을 사용하고 있는지 알아봤다.
* 사용 중인 port 탐색 cmd 명령어: netstat -ano
8080 포트의 PID가 3440인 것을 확인하고 작업관리자에서 PID가 3440인 것을 찾아보니 TNSLSNR.exe 이라는 프로그램이었다. 이 프로그램의 속성을 보니 Oracle 구동시 사용되는 프로그램인 것을 알 수 있었다.


* 결론: 오라클을 삭제할 것이 아니라면 로컬에 세팅하려는 프로젝트의 포트 번호를 8090 등의 다른 번호로 변경해야한다. 위와 같이 HTTP Connector port 부분의 주석 처리를 없애고 포트 번호를 8090으로 바꾸면 https://localhost:8443이 정상 구동된다.
'에러 해결 > Server' 카테고리의 다른 글
[Docker] Redis 버전 업데이트로 인한 unable to connect to localhost:6379 에러 해결 (0) | 2023.08.24 |
---|---|
[Ubuntu] VirtualBox Server 설치 에러: Temporary failure resolving 'archive.ubuntu.co (0) | 2023.04.20 |
[WAS] Linux - tomcat 버전 확인 (0) | 2023.03.17 |
[에러 해결] Linux - tar (압축 해제) 허가 거부 (0) | 2023.03.08 |