/
Apache HTTP Server (mod_proxy_http)를 사용하여 Atlassian 서버 응용 프로그램 프록시

Apache HTTP Server (mod_proxy_http)를 사용하여 Atlassian 서버 응용 프로그램 프록시

Apache HTTP Server가 Atlassian 서버 애플리케이션의 리버스 프록시 역할을하는 방법에 대해 설명합니다.

참조 가이드 : https://confluence.atlassian.com/kb/proxying-atlassian-server-applications-with-apache-http-server-mod_proxy_http-806032611.html

 

0. 사전 조건

서버 정보

  • 설치 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 파일 수정

server.xml파일 위치는 어플리케이션, 운영 체제 및 설치 위치에 따라 다릅니다.

Atlassian 어플리케이션의 일반적인 기본 설치 위치는 다음과 같습니다.

  • 리눅스 : /opt/atlassian/<application-name>

  • 윈도우 : C:\Program Files\Atlassian\<application-name>

  • 윈도우 : C:\Atlassian\<application-name>

Atlassian 어플리케이션 폴더 구조의 위치 :

<install-path> : 시스템에서 응용 프로그램이 설치된 위치를 나타냅니다.

어플리케이션

server.xml 위치

어플리케이션

server.xml 위치

Bamboo

<install-path>/conf/

Confluence

<install-path>/conf/

Crowd

<install-path>/apache-tomcat/conf/

JIRA applications

<install-path>/conf/

Bitbucket Server

<Bitbucket home directory>/shared/bitbucket.properties

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 파일 생성

Confluence의 경우 synchrony 설정으로 인하여 다른 어플리케이션과 다르게 구성됩니다.

3.  심볼릭 링크 생성

Apache 서버에 등록하기 위해/etc/apache2/sites-available/<subdomain>.<domain>.com.conf 심볼릭 링크

4. Apache HTTP 서버 재기동

3. 최종 구성

1. 어플리케이션 URL 변경

각 Atlassian 어플리케이션에 대해 기본 URL을 프록시에서 구성한 주소(예 : Apache HTTP Server가 제공할 URL)로 설정

 2. HTTP 압축 비활성화

프록시와 Tomcat에서 압축을 실행하면 하나의 Atlassian 어플리케이션을 다른 Atlassian 어플리케이션과 통합 할 때 문제가 발생할 수 있습니다. JIRA 어플리케이션 및 Confluence에 대해 HTTP 압축을 비활성화하는 것이 좋습니다.

  • Jira : 시스템 - 일반 설정 - gzip 암축 사용 해제

     

  • Confluence : 일반 환경 설정 - 기본 구성 - HTTP 응답 압축 체크 해제