[OS]/Embedded&Linux

Apache2 와 trac 연동하기

하늘을닮은호수M 2007. 6. 1. 14:27
반응형

전에 trac 설치법에 대해 블로그에 올려놨는데 이놈은 trac 자체 데몬을 실행해서 Port 8000으로 접속해야 하는 문제가 있었습니다. 게인적으로 local에서 사용하기에는 문제가 없지만 소트웨어를 개발하는 회사나 방화벽에 모든 포트가 막혀 80포트만 열려있는 곳에서는 외부에서는 접속 할수가 없는 문제점이 있습니다.

에구 남들은 한번에 trac이랑 apache2랑 연동해서 사용하는데 저는 이렇게 되기까지 삽질을 2틀정도 했습니다. 그래도 동작을 하니 기쁘기 그지 없습니다. ^^;

그럼 지금부터 제 시스템에 Trac 과 apache2 + subversion을 설치하기 까지의 과정을 정리해보겠습니다. 알고 보니 5분이면 설치에서 세팅까지 가능한것을 ㅜ.ㅜ 2틀동안 삽질한거 생각하면 우띠

먼저 Trac 및 아파치 그리고 subversion을 연동하기 위해서 필요한 패키지를 설치 합니다.

#sudo apt-get install trac libapach2-svn libapache2-mod-python2.4

2.trac 환경 디렉토리 만들기
아파치와 연동하기 위한 Trac 환경을 설정이 필요합니다.

#sudo mkdir /var/trac
#sudo chown www-data:www-data /var/trac

위와같이 디렉토리를 만든 후 소유권을 아파치가 사용할수 있도록 변경합니다.


3.아파치에 trac 연동
Reference: http://trac.edgewall.org/wiki/TracOnUbuntu

위에 스텝 3번째에 가상호스트 설정파일을 이용했더니 잘 안됐습니다. 그래서 저 같은경우는 default 파일 마지막에 아래와 같이 설정했습니다. 이 방법을 알아내는데 왜 그렇게 삽질을 했는지 모르겠습니다. ^^;

저같은 경우는 softpro라는 프로젝트를 생성했습니다. 그래서아래와 같은 설정 파일이 됐습니다.

주의 사이에 추가필요.. 다들 알지만 혹시나 해서... 적습니다.

#sudo vi /etc/apache2/site-available/default


#set up Trac handling
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /var/trac
PythonOption TracUriRoot /


여기서 Location 에 /softpro 는 내가 만든 프로젝트 이름입니다. 자신에 맞게 프로젝트이름 적으면 됩니다.

그리고svn모듈을 활성화 시켜주기위해서 아피치 httpd.conf 파일에 추가가 필요합니다.
#sudo vi /etc/apache2/httpd.conf
LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so

만약 /usr/lib/apache2/modules/에 mod_dav.so 파일과 mod_dav_svn.so 파일이 없다면 아직 패키지가 설치 안되어 있습니다. 찾아서 설치해주시거나 혹은 모듈이 다른 디렉토리에 있을 수도 있습니다. 모듈이 있는 위치를 적어주시면 됩니다.
4.Trac과 subversion을 사용하기 위해서 환경설정
스템 1,2,3을 이상없이 넘어 오셨다면 그 다음은 subversion 설정이 필요합니다.
# sudo mkdir /var/svn
# sudo mkdir /var/svn/softpro //YourProjectNameHere
# sudo mkdir /tmp/softpro//YourProjectNameHere
# sudo mkdir /tmp/softpro/branches
# sudo mkdir /tmp/softpro/tags
# sudo mkdir /tmp/softpro/trunk
# sudo svnadmin create /var/svn/softpro
# sudo svn import /tmp/softpro
file:///var/svn/YourProjectNameHere -m "initial import"
# sudo rm -rf /tmp/YourProjectNameHere

위 과정을 통해서 /var/svn/softpro에 subversion 설정됩니다. 그리고 난후 아파치 서버가 접근할수 있도록 소유권을 바꿔줍니다. softpro를 자신이 만들고싶은 프로젝트 명으로 쓰시면 됩니다.
(좀더 subversion에 대해서 알고 싶다면 http://http://wiki.kldp.org/wiki.php/Subversion-HOWTO#s-1을 참조하십시요. ^^)
#sudo chown -R www-data /var/svn/softpro
#sudo chown -R www-data /usr/share/trac
#sudo apache2 -k restart
위와 같이 하신후에 테스트 svn이 잘 동작하는지 웹에서 확인이 가능합니다. 정상적으로 설정이 됐다면 아래 그림과 같이 위에서 생성한 디렉토리들이 보일것입니다.(http://자신의도메인/svn/자신의프로젝트명 저같은 경우 softpro입니다.)
5. 마지막 trac의 환경설정
스텝 4까지 무사히 마치셨다면 마직막으로 trac 환경설정이 필요합니다.
#sudo trac-admin /var/trac/softpro initenv
위같이 "trac-admin" 을 실행하면 아래 같이 configuration에 필요한 것들을 물어 본다.
•the project name (YourProjectNameHere)
•the path to svn repository (/var/svn/YourProjectNameHere)
•the path to the Trac templates directory (/usr/share/trac/templates)
마지막으로 아래와 같이 설정하면 된다.
#sudo trac chown -R www-data:www-data /var/trac/softpro
최종적으로 설정한후 아파치에서 trac 설정을 확인 할 수 있습니다. 혹시 궁금한점 있으시면 댓글 남겨주세요 알고 있는 한도에서는 알려드리겠습니다. 저같이 삽질하는 일이 없어야 겠죠 ^^;



Reference

Trac Site:

http://trac.edgewall.org

Installing Trac on Ubuntu for Multiple Projects using Mod_Python: http://trac.edgewall.org/wiki/TracUbuntuMultipleProjects

Subversion How to :

http://wiki.kldp.org/wiki.php/Subversion-HOWTO#s-1



반응형