상황설명
오늘 apache2를 앞에 웹서버로 두고 그 뒤에 tomcat을 띄워놓고 apache2에서 proxy 모듈을 통해서 tomcat으로 전달해주는 작업을 하고 있었는데요. 셋팅 완료 하고 나서 tomcat을 실행시키고, apache2를 start 시키고 나서 웹브라우저를 통해 접속하니 접속이 안되는 겁니다. 왜 안되는지 확인을 해보기 위해서 로그를 확인해야했습니다.
기본 로그 파일 위치 : /var/log/apache2
여기에 있는 error.log 확인
(만약 로그 파일 경로나 이름을 다르게 했을 경우 해당 경로나 이름으로 된 로그파일 확인)
확인해보니 아래처럼 에러 로그가 찍혀있었음.
에러 로그
[Thu Jun 30 13:50:36.490016 2022] [proxy:warn] [pid 14766:tid 140286969763584] [client 103.203.57.10:42172] AH01144: No protocol handler was valid for the URL / (scheme 'http'). If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
apache2 proxy를 사용하기 위해 proxy 모듈만 활성화 하면 될 줄 알았으나 proxy_http 모듈을 활성화 해주어야되는 것이었습니다.
해결
따라서 아래 명령어를 통해서 proxy_http 모듈을 활성화 시키니 정상화되었습니다.
$ sudo a2enmod proxy_http
$ sudo service apache2 restart
참고
https://stackoverflow.com/questions/23931987/apache-proxy-no-protocol-handler-was-valid