일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- Melbourne 여행
- 모리셔스리조트
- 독일여행
- 모리셔스 카셀라
- 두바이여행
- duabi
- mauritius casela
- postgresql 비밀번호 초기화
- 서울야경
- 서울 야경
- 트루우비슈
- 모리셔스 여행
- 느낌 사진
- openstack
- 트루오비쉬
- 경주 여행
- Sony A850
- mauritius
- 모리셔스 카젤라
- Trou aux Biches
- postgresql 설치
- r
- cloud foundry
- 모리셔스여행
- postgresql 비밀번호 변경
- 두바이
- 모리셔스
- 경주
- 프랑크푸르트 여행
- bind9
- Today
- Total
I.K.Picture & IT Info.
Tomcat & Apache & Websocket 사용 시 방화벽에 의한 프록시 설정 본문
Tomcat & Apache & Websocket 사용 시 방화벽에 의한 프록시 설정
helpful-intruder 2016. 7. 12. 12:48물론 자바로 웹 서버 구축 시 Tomcat을 이용할 경우는 많을 것 같구요.!!
Tomcat을 여러개 묶어서 사용(?) 하거나 Apache와 Mod_JK 통신 (AJP) 해서 사용하시는
분들을 은근 많을 것으로 생각이 됩니다만..
추가적으로 WebSocket을 사용하려고 하는데 ... 굳이 프록시를????
그렇게 생각하다보니.. 이번 포스팅 하는 경우는 쫌 특별한 경우라고 생각이 됩니다.
일단 이 방법을 알게된 이유는 방화벽 때문입니다.
기본적으로 제가 있는 공간은 80 Port를 제외한 나머지 포트가 모두 외부와는 막혀 있어요 ㅠㅠ
거기에 전 주로 자바를 이용해서 개발을 하는 개발자이구요..
그러다보니 Tomcat + Mod_ JK + Apache를 많이 사용하게 됩니다.
> Tomcat : 웹 컨테이너로 사용
> Apache : 정적 파일 (HTML, JavaScript, CSS)
일반적인 통신(HTTP) 할 때는 문제가 없습니다. AJP 통신을 통해 .. Tomcat이 8080 포트라 해도 80포트로 접근이 가능하기 때문이죠.
그런데 HTML5 WebSocket의 경우 ws:// 로 통신을 하게 됩니다!!!
그러다보니 ㅠ ㅠ WebSocket End-Point가 /test 라고 하면 클라이언트에서 ws://localhost/test 를 호출 해버리더군요 ㅠㅠㅠㅠ
그래서 찾게되었습니다!! Apache에서 어떻게 WS 통신을 톰캣으로 보낼 수 있을까!?
자 서론이 너무 길었고... 이제 설명할께요 ^^;;;;;;; (너무 간단해서 서론이 길어졌네요;;)
※설정한 운영체제는 Ubuntu 14.04 를 기본으로 하고 있습니다.
1. 프록시 플러그인을 아파치에서 사용할 수 있도록 활성화 한다.
#a2enmod proxy_wstunnel |
추가 정보!!!
mod 플러그인으로 일반적인 proxy가 있습니다 (#a2enmod proxy)
하지만 이 프록시 플러그인은 웹 소켓을 지원하고 있지 않아요~ 그렇기 때문에 proxy_wstunnel을 사용해야되고
이놈을 활성화하면 기본적으로 porxy 가 동시에 활성화 됩니다.
2. VirtualHost에 프록시 관련 설정 추가 (기본 위치 : /etc/apache2/sites-enabled/000-default.conf)
<VirtualHost *:80> ... ... ... <Location /app/test> //클라이언트에서 요청하게 될 주소 ProxyPass ws://localhost:8080/TomcatWeb/test ProxyPassReverse ws://localhost:8080/TomcatWeb/test //내부 실제 포트 접속 경로 </Location> </VirtualHost> |
3. 마지막으로 apache를 재시작해준다.
#service apache2 restart |
'Desktop and Mobile > Linux' 카테고리의 다른 글
[Ubuntu 14.04] 자바 8 (JDK 8) 설치 (0) | 2016.10.03 |
---|---|
fdisk 파티션 관리 (0) | 2016.07.22 |
[CentOS 7] Apache 파일 접근 시 403 Forbidden error (0) | 2016.07.08 |
Linux 사용자 서비스 등록 (0) | 2016.01.21 |
[Ubuntu 14.04] 상세 버전 확인 (0) | 2016.01.21 |