블로그 이름

[ERROR] Tomcat 연결 안되는 현상 해결 방법 정리 본문

개발/오류

[ERROR] Tomcat 연결 안되는 현상 해결 방법 정리

Hide 2025. 2. 21. 00:33

오늘은 윈도우 서버를 사용하여 1.2.3.4의 5555 포트로 D:\TEST 경로를 설정하여 톰캣 포트를 열어 클라이언트가 접근 가능하도록 설정하고자 했는데 안되는 현상이 있었다. 

 

해결 순서는 다음과 같다.

 

1. 톰캣이 5555 포트에서 실행 중인지 확인

netstat -ano | findstr :5555

위 명령어로 Listnening 상태임을 확인하였다. 톰캣이 실행되고 잇고 포트 설정이 잘못된건 아님을 확인. 

 

2. windows 방화벽에서 포트 확인

netsh advfirewall firewall show rule name=all | findstr 5555

결과가 없으면 방화벽이 포트를 막고 있을 가능성이 있다. 만일 포트가 막힌 경우 

netsh advfirewall firewall add rule namej="Tomcat 5555" dir=in action=allow protocol=TCP localport=5555

명령어 실행 후 http://1.2.3.4:5555 로 접속 시도

 

3. server.xml에서 포트 설정 확인

conf/server.xml에서 connector 설정 확인

<Connector port="5555" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort=8443" />

 위와 같이 설정되어잇는지 확인한다.

<Connector port="5555" address="127.0.0.1" /> → 외부에서 접근 불가능

<Connector port="5555" />가 아예 없음 → 포트가 열리지 않음

 

4. D:\TEST 경로를 웹 루트로 설정했는지 확인

<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="D:/test" reloadable="true"/> </Host>

D:\TEST가 TOMCAT에 등록되지 ㅇ낳으면 404 에러 발생한다.

 

그 외 웹 루트에 기본 파일 index.html이 있는지 확인하고, catalina.out 로그 파일에서 tomcat ERROR 없이 동작하는지 확인한다. 

 

java.net.BindException: address already in use -> 해당 포트 이미 사용중으로 taskkill /F /IM java.exe 명령어로 실행 중인 프로세스 종료 후 재실행한다.

 

5. 원격 접속이 허용되었는지 확인

window 서버에서 curl -v http://localhost:5555 명령어로 정상 응답이 온다면 방화벽 문제, 응답이 없으면 톰캣 설정 문제이고

타 컴퓨터에서 원격 테스트 시 curl -v http://1.2.3.4:5555 로 응답이 없다면 windows 방화벽이 5555 포트를 차단한 것으로 netsh advfirewall 명령어로 포트를 열어야 한다.

 

나같은 경우

 

 

server.xml의 웹 루트 오설정 문제로 404 오류 반환되었고

Connecter의 Host 수정 후 톰캣 재시작하여 해결되었다.