Trac을 사용하기 위해 인스톨 할때는 보통 mod_python 방법을 사용하곤 했는데, mod_python 프로젝트가 중단되고, Trac에서는 mod_python방법을 권하지 않는다.
그래서 mod_wsgi 방식을 알아봤는데 예상외로 간편한 셋팅이다.
case : ubuntu
참조링크 : http://robertbasic.com/blog/trac-on-ubuntu/
sudo apt-get install libapache2-mod-wsgi python-setuptools libsqlite3-dev python-subversion sudo easy_install Trac cd /var/www/xxx/ sudo mkdir trac trac/sites trac/eggs trac/apache sudo vi trac/apache/trac.wsgi import sys sys.stdout = sys.stderr import os os.environ['TRAC_ENV_PARENT_DIR'] = '/var/www/xxx/trac/sites' os.environ['PYTHON_EGG_CACHE'] = '/var/www/xxx/trac/eggs' import trac.web.main application = trac.web.main.dispatch_request sudo chown -R www-data.www-data trac
xxx 는 도메인 혹인 웹루트, 아파치 가상호스트 설정파일을 수정해주면 간단하게 구동가능
sudo vi /etc/apache2/sites-available/xxx WSGIScriptAlias / /var/www/xxx/trac/apache/trac.wsgi <Directory /var/www/xxx/trac/apache> WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all </Directory>
아파치를 리스타팅 하면 Available Projects 라고 나오면 일단 완료.
이제 프로젝트를 추가해준다
sudo trac-admin /var/www/xxx/sites/project_name initenv sudo chown -R www-data.www-data /var/www/xxx/sites/project_name
인증을 위해 다음 부분을 첨가해준다.
sudo vi /etc/apache2/sites-available/xxx <Location /*/login> AuthType Basic AuthName "Trac login" AuthUserFile /var/www/xxx/trac/.htpasswd Require valid-user </Location> sudo htpasswd -bcm /var/www/xxx/trac/.htpasswd user_id user_password sudo trac-admin /var/www/xxx/trac/sites/project_name add user_id TRAC_ADMIN
Trac Account Manage Plugin : http://trac-hacks.org/wiki/AccountManagerPlugin
sudo easy_install https://trac-hacks.org/svn/accountmanagerplugin/trunk sudo vi trac/sites/project/conf/trac.ini [components] trac.web.auth.LoginModule = disabled acct_mgr.web_ui.LoginModule = enabled acct_mgr.web_ui.RegistrationModule = disabled [account-manager] password_file = /var/www/xxx/trac/.htpasswd password_store = HtPasswdStore
trac.ini의 수정사항들은 웹서버를 재시작 시켜야만 작동된다.