Apache HTTP Server가 Atlassian 서버 애플리케이션의 리버스 프록시 역할을하는 방법에 대해 설명합니다.
사전 조건
서버 정보
설치 OS : Ubuntu 18.04
Apache 2.4 버전 설치
Atlassian 제품(Jira, Confluence, Bitbucket, Crowd)
Domain URL 등록
Application context 사용 X
http://example.com/jira 와 같이 "jira" context를 사용하지 않음을 가정합니다.
1. Atlassian 어플리케이션 구성
1. 어플리케이션 중지
2. tomcat의 server.xml
파일 수정
Bitbucket 5.0 이상을 제외한 Atlassian application의 경우:
<Connector port=<default> maxThreads=<default> minSpareThreads=<default> connectionTimeout=<default> enableLookups=<default> maxHttpHeaderSize=<default> protocol=<default> useBodyEncodingForURI=<default> redirectPort=<default> acceptCount=<default> disableUploadTimeout=<default> proxyName="<subdomain>.<domain>.com" ## 제공될 어플리케이션 URL proxyPort="80" ## 제공될 어플리케이션 port scheme="http"/>
Bitbucket 5.0 이상의 경우:<Bitbucket home directory>/shared/bitbucket.properties
파일 수정
server.scheme=http server.proxy-port=80 ## 제공될 어플리케이션 port server.proxy-name=<subdomain>.<domain>.com ## 제공될 어플리케이션 URL
3. 어플리케이션 재시작
2. Apache HTTP Server 구성
Atlassian은 Apache에 프록시, 게이트웨이 또는 캐시를 구현하는 동시에 단일 클라이언트에서 여러 가상 호스트를 허용 하는 mod_proxy
모듈을 사용하도록 권장합니다.
1. 아파치에서mod_proxy
모듈 활성화
$ sudo a2enmod proxy_http $ sudo a2enmod proxy_wstunnel $ sudo a2enmod rewrite $ service apache2 restart
2. mod_proxy
가상 호스트 구성
/etc/apache2/sites-available/<subdomain>.<domain>.com.conf
파일 생성
<VirtualHost *:80> ServerName <subdomain>.<domain>.com ProxyRequests Off ProxyVia Off <Proxy *> Require all granted </Proxy> ProxyPass / http://<internal_domain>:<port>/ ProxyPassReverse / http://<internal_domain>:<port>/ </VirtualHost>
3. 심볼릭 링크 생성
Apache 서버에 등록하기 위해/etc/apache2/sites-available/<subdomain>.<domain>.com.conf
심볼릭 링크
$ cd /etc/apache2/site-enabled $ ln -s ../sites-available/<subdomain>.<domain>.com.conf <subdomain>.<domain>.com.conf
4. Apache HTTP 서버 재기동
$ sudo service apache2 restart
3. 최종 구성
1. 어플리케이션 URL 변경
각 Atlassian 어플리케이션에 대해 기본 URL을 프록시에서 구성한 주소(예 : Apache HTTP Server가 제공할 URL)로 설정
2. HTTP 압축 비활성화
프록시와 Tomcat에서 압축을 실행하면 하나의 Atlassian 어플리케이션을 다른 Atlassian 어플리케이션과 통합 할 때 문제가 발생할 수 있습니다. JIRA 어플리케이션 및 Confluence에 대해 HTTP 압축을 비활성화하는 것이 좋습니다.
Jira : 시스템 - 일반 설정 - gzip 암축 사용 해제
Confluence : 일반 환경 설정 - 기본 구성 - HTTP 응답 압축 체크 해제
Add Comment