톰캣서버 중복에러 관리자권한으로도 해결 안될 때 임시해결방법

톰캣서버 중복에러 관리자권한으로도 해결 안될 때 임시해결방법

문제상황

이클립스에서 톰캣 서버를 실행하던 중 80 port가 already in use라는 에러가 발생했다.
차분히 cmd를 열고 taskkill했는데 오류 : 프로세스(PID 4)를 종료할 수 없습니다. 원인: 액세스가 거부되었습니다가 출력되었다.
관리자권한으로 다시 실행하여 taskkill했지만 여전히 동일하 오류 메세지가 출력되었다.

권리자권한으로 실행해도 동일한 에러가 발생

아마 ISS(인터넷정보서비스)를 설치하면서 동일한 80포트를 사용했기때문에 톰캣서버와 충돌난 것 같다.
추측일뿐 정확한 원인은 지금까지도 찾아보고 있다…




톰캣서버충돌시 해결방법

  1. 명령프롬프트를 연다.
  2. netstat -ano를 입력한다.
  3. 충돌된 포트를 찾은 뒤 PID를 기억한다.
    • 나의 경우 충돌된 포트가 80이므로 PID는 4이다.

  1. taskkill /f /pid 4를 입력한다.

  1. 거부가 된 경우 관리자 권한으로 cmd를 실행한 뒤 위 방법을 재시도한다.
    • cmd를 관리자 권한으로 실행하기 위해선 파일탐색기에 cmd입력한 뒤 앱에서 우클릭하여 관리자권한으로 실행할 수 있다.
    • 보통 여기서 프로세스가 종료된다.
    • 나처럼 권리자권한으로 실행했음에도 액세스 거부가 방생한 경우 아래 임시 방법을 사용할 수 있다.




임시해결방법

톰캣 서버 HTTP 포트를 80에서 8080으로 변경해준뒤 테스트 실행시 URL에 :8080을 붙여주니 웹페이지가 정상적으로 출력되었다.

1
2
3
4
5
//예시
www.test.com/home/main

//8080추가
www.test.com/home/main:8080

컨트롤러에 의해 알아서 맵핑이 되기때문에 즐겨찾기에 저장해놓은 뒤 프로젝트를 테스트하면 편하다.