SVN+Apache

지난번 Trac와 SVN설치
SVN을 설치 한 후, 웹으로 접근하는 것을 테스트 안했었는데..
역시 오늘은 그것이 문제가 되서 Eclipse에서 snv repository가 등록이
안되어서 오늘은 그것에 대한 트러블 슈팅 아닌 트러블 슈팅에 대해서
잠시 적겠습니다.

일단 httpd.conf 수정
다은 두 모듈을 추가시켜 주어야 합니다.
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so


그리고 conf.d/svn.conf 수정
<Location /SVN/PATH/PROJECT_NAME>
 DAV svn
 SVNPath /SVN/PATH/PROJECT_NAME
 AuthType Basic
 AuthName "PROJECT NAME"
 AuthUserFile /SVN/PATH/conf/passwd
 Require valid-user
</Location>
※주의: AuthName이란 svnserve.conf파일의  realm = "PROJECT NAME" 부분의
PROJECT NAME을 넣어주시면 됩니다. AuthName을 안적을 경우에 문제가 생겨서
이부분을 넣어주니 문제가 없었습니다. 설정에 관련이 있는듯 합니다.

※참고: AuthUserFile은 저의 경우에는 원래 SVN의 passwd를 사용하니 안되서 Trac의
passwd 파일을 사용하니 잘 되는 것으로 보아 Trac와 SVN 연동시 그렇게 된것 같습니다.

이것과는 상관 있을지는 정확히 모르겠지만
chgrp -R apache /SVN/PATH/
-그룹을 Apache로 변경, Apache 서비스에서 접근 가능하도록 하기 위함.
chcon -R -t httpd_sys_content_t /SVN/PATH/
-Trac 설정시 언급한바와 같이 SELinux 설정으로 인한 접근 거부를 방지

chgrp/ chcon은 필수인지 선택인지는 저도 잘 모르겠습니다.

미리 다 변경후 위의 AuthName 라인을 추가해 주니 잘 작동하였습니다. ㅠㅠ









크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/05/19 20:13 2009/05/19 20:13
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/136

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/136

Leave a comment

Trac와 Subversion 설치

참조:  한울프로젝트 개발환경구축
참조:  한울프로젝트 Trac Trouble Shooting

Apache 2.2.11에 Trac와 Subversion 설치

yum을 사용하여 mod_python, Genshi, setuptools, Trac, Subversion 설치
yum을 이용한 설치와 chgrp, chmod를 제외한 작업은 일반 유저로 가능

yum을 이용한 Trac를 사용하여 셋팅하는 경우 에러가 발생하면
yum으로 설치한 Trac는 삭제한 후 easy_install Trac 명령어를 사용하여 새로 설치

ex) yum install mod_python 또는 yum install trac\*
trac관련 프로그램들은 모두 설치 가능, 능력것 사용하길 바랍니다. ㅠㅠ
추후에 esay_install을 이용하여 Trac plug-in 설치하지 말것.

Subversion
ex) /data/svn :프로젝트 폴더 /YOUR/PROJECT/SVN_DIRECTORY

svn 저장소 만들기
cd /YOUR/PROJECT/SVN_DIRECTORY
svnadmin create PROJECT_NAME --fs-type fsfs

svn 권한
vi /YOUR/PROJECT/SVN_DIRECTORY/PROJECT_NAME/conf/svnserve.conf

[general] 부분의 다음 라인에 대한 주석 제거
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository


svn유저만들기
vi /YOUR/PROJECT/SVN_DIRECTORY/PROJECT_NAME/conf/passwd
[users]
아이디 = 패스워드 형식으로 추가
user1 = 1234
user2 = 1234


svn 유저 권한
vi /YOUR/ PROJECT/SVN_DIRECTORY/PROJECT_NAME/conf/authz
[aliases]
[group]
admin= user1
users = user2
[/] #전제 svn영역에 대한 권한 설정
@admin = rw
@users = r
* =
[PROJECT_NAME:/] svn중 해당 프로젝트 영역에 대한 권한 설정
@admin = r
user1 = rw
* =

개인 혹은 그룹에 맞게 권한 설정
svn 서버 가동
svnserve -d -r /YOUR/SVN_PROJECT/DIRECOTRY/


Trac
ex) /data/trac :프로젝트 폴더 /YOUR/PROJECT/Trac_DIRECTORY

Trac 사이트 만들기
이미 svnadmin으로 svn repository를 만들어 놓았으므로,
trac 사이트는 쉽게 만들 수 있다.
cd /YOUR/PROJECT/Trac_DIRECTORY
trac-admin PROJECT_NAME initenv
1.생성할 프로젝트 이름을 입력한다. 프로젝트 이름 기입 
2.연결할 데이터베이스를 설정한다. 기본 설정을 사용하므로 그냥 엔터 
3.사용할 버전 관리 시스템 설정. SVN을 기본 설정 사용 할 것이므로 그냥 엔터
4.버전 관리 시스템 저장소 설정. 이미 SVN에서 만든 Repository를 지정할 것이므로,  /path/to/repos 에 /YOUR/PROJECT/SVN_DIECTORY/PROJECT_NAME으로 설정한다.
5.나머지 설정은 그냥 엔터

아파치 연동을 위한 폴더 그룹 설정
chgrp -R apache PROJECT_NAME/
cd PROJECT_NAME
chmod 775 db
chmod 775 db/trac.db

Trac 유저 및 패스워트 설정
cd /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME/conf/
htpasswd -c passwd USER_ID
New Password:
Re-type new password: 
기존의 패스워드 파일에 사용자를 추가하려면 -c option은 사용하지 않아도 된다.

Trac와 Apache 연동을 위한 conf 파일 설정
파일이름.conf 형식으로 파일 생성
/etc/httpd/conf.d/ 하위에 trac.conf 수정
trac.conf 파일이 없으면 새로 생성
<LocationMatch /trac>
    SetEnv TRAC_ENV /YOUR/PROJECT/Trac_DIRECTORY
</LocationMatch>

<IfModule mod_python.c>
<Location /trac>
    SetHandler mod_python
    SetEnv PYTHON_EGG_CACHE /usr/lib/python2.5/site-packages/
    PythonHandler trac.web.modpython_frontend  
    PythonOption TracEnvParentDir /YOUR/PROJECT/Trac_DIRECTORY
    PythonOption TracUriRoot /trac
</Location>

<Location /trac/PROJECT_NAME/login>
    AuthType Basic
    AuthName "Bioneer Pombe"
    AuthUserFile /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME/conf/passwd
    Require valid-user
</Location>

</IfModule>


Trac 관리자 계정 설정
trac의 계정중 관리자 계정으로 등록하고자 하는 계정을 Trac 관리자 계정으로 등록하는 방법
trac-admin /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME permission add USERID TRAC_ADMIN

Trac.ini 수정
vi /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME/conf/trac.ini

수정
[trac]
default_charset = utf-8
추가
[components]
webadmin.* = enabled
tracsearchall.* = enabled
tractimevisualizerplugin.* = enabled
worklog.* = enabled
tracrpc.* = enabled
tracdnd.* = enabled
burndown.* = enabled


Trac 변경 사항 적용 및 아파치 환경 설정 적용
cd /YOUR/PROJECT/Trac_DIRECTORY/
trac-admin PROJECT_NAME upgrade
trac-admin PROJECT_NAME resync
su
httpd -k stop
httpd -k start
※주의: httpd -k restart 나 apachectl restart 명령어는 적용안되는 듯.

위의 방법대로 셋팅한 경우
PROJECT_NAME의 Trac 사이트 주소는 http://localhost/trac/PROJECT_NAME/
Trac의 사이트 주소 http://localhost/trac/

Trac plugin 설치
http://trac-hacks.org에 다수의 플러그인 존재 설치 하고자 하는 플러그인을 다운받아
설치하면 Ok (그러나 문제 발생 가능성도 있으니 주의)
만약 문제가 발생하는 플러그인을 제거하려면 easy_install 사용하여 제거 가능

easy_install -m plugin_name

Trac 설치 및 설정 후 페이지가 안보이는 경우 해결 방법
1. 대부분의 문제는 SELinux로 인한 보안 문제일 것이다.
chcon -R system_u:object_r:httpd_sys_content_t:s0 /YOUR/PROJECT/Trac_DIRECTORY/
또는
chcon -R -t httpd_sys_content_t /YOUR/PROJECT/Trac_DIRECTORY/

2. (The user apache requires read _and_ write permission to the database file /var/trac/module_dev/db/trac.db and the directory it is located in.)

chcon -t httpd_sys_script_rw_t trac.db
chmod 777 /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME/db
chmod 666 /YOUR/PROJECT/Trac_DIRECTORY/PROJECT_NAME/db/trac.db
chown -R apache:apache /YOUR/PROJECT/Trac_DIRECTORY
httpd -k stop
httpd -k start

이 외의 문제에 대해서는 모르니 각자가 해결 한 후 포스팅 하세요~ ^^

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/05/09 10:43 2009/05/09 10:43
, , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/127

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/127

Leave a comment

VirtualHost 간단 방법

지웅이한테서 배운 초간단 VirtualHost 설정
하나의 IP를 가진 컴퓨터에서 두개 이상의 도메인 작동시키는 방법

vi /etc/httpd/conf/httpd.conf




NameVirtualHost YOUR.IP.ADDRESS

<VirtualHost YOUR.IP.ADDRESS>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot YOUR/WEB/DOC/ROOT
    ServerName YOUR.SERVER.NAME
</VirtualHost>

<VirtualHost YOUR.IP.ADDRESS>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot YOUR/WEB/DOC/ROOT
    ServerName YOUR.SERVER.NAME
</VirtualHost>


빨간색 박스는 원래 서버를 위한 설정
파란색 박스는 본 서버에서 추가적으로 VirtualHost 해주려는 설정



크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/05/07 20:23 2009/05/07 20:23
,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/125

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/125

Leave a comment
출처:http://linux.tini4u.net/stories.php

일반적으로 웹호스팅을 받아보면 HTTP Status code page가
윈도우의 기본적인 그것이 아니라 깔끔하게 제작된 페이지를 본적이 있을 것입니다.
그것은 아파치에서(혹은 사용자가 [Override enabled]) 서버에러에 대한
응답을 지정해주어서 그렇습니다.

아파치 문서에 보면 ErrorDocument 부분이 정의되어 있으니
한번쯤 읽어보시면 이해하시기가 쉬우실 겁니다.
대략적으로 정리하면 총 3가지 방법으로 응답을 지정할 수가 있는데,
그것은 아래와 같습니다.


1. 보통의 텍스트
ErrorDocument 500 "The server made a boo boo."

문자열인 경우엔 " " 안에 문자열을 넣으면 됩니다.
추가=> [" "] 표시는 텍스트임을 알려주는 것으로서 그 자체는 출력되지 않습니다.


2. 내부 전환
ErrorDocument 404 /missing.html

서버 내부의 파일로 전환하는 방법인데 주의할 점으로는
절대 경로로 지정했을 경우엔 틀린 방법이라는 것입니다.
문법의 최상위 경로(/)는 DocumentRoot를 의미하기 때문입니다.
즉, 내 도메인이 /home/foobar/www/로 DocumentRoot가 설정되어 있고
전환할 페이지가 /home/foobar/www/missing.html 에 있다면
ErrorDocument 404 /missing.html

위와같이 설정을 해주셔야 작동을 합니다.

다만 이것이 사용자단이 아닌 아파치단에서(httpd.conf) 설정되었을 경우
모든 도메인에 대해서 404 코드는 /missing.html 파일을 찾게 됩니다.
이런 경우 사용자 입장에서는 /missing.html 파일을 사용하지 못합니다.

만약 서버 관리자로써 모든 Status Code 페이지를 전환하려면
Alias /Error "/usr/local/apache/htdocs/Error/"
ErrorDocument 404 /Error/missing.html

이런식으로 Alias를 만들어 주면 해결이 됩니다.
왜냐하면 모든 도메인은 /Error/missing.html를 찾을 것이고
/Error은 /usr/local/apache/htdocs/Error/ 으로 보내지기 때문입니다.
/Error/missing.html를 풀이해보면
/usr/local/apache/htdocs/Error/missing.html 이 되겠죠.

추가=> 스크립트나 SSI로도 내부 전환이 가능합니다.


3. 외부 전환
ErrorDocument 402 http://www.example.com/subscription_info.html

서버 외부의 파일로 전환하는 방법인데 김정균님 경험상으로
외부 전환시 CGI와 htaccess 인증시에 505 Status Code가 발생했다고 합니다.
왜 그런지 이유는 잘 모르겠다고 하며 필자 역시 비슷한 경우가 있었습니다.

추가=> 원래 요청과 관련있는 환경 변수의 상당수가 스크립트에 전달되지 못한다는 점을 알고 있어야 합니다.


※ 설정하면서 주의해야 할 사항
위의 설정대로 설정했고 아무런 문제도 없는데
IE 자체의 에러페이지가 보이는 경우가 있습니다.
이런 경우는 대략 몇가지 문제가 있는데 대표적인것은 아래와 같습니다.

1. 완전한 HTML 페이지가 아닐 경우
<BODY>로 시작해서 </BODY>로 확실하게 끝나지 않았거나
혹은 <HTML>로 시작해서 </HTML>로 확실하게 끝나지 않았을 경우 입니다.
또는 PHP의 exit 명령으로 종료할때 </BODY></HTML>가 출력되지 않는
경우에도 IE 기본 페이지가 나옵니다.

2. Custom error page의 사이즈가 기준치보다 작은 경우
Custom error page 라는게 크기가 정해져 있기 때문에
이 크기가 넘지 않는 경우에도 IE 기본 페이지가 나옵니다.
Custom error page 의 각 크기 기준치는 아래와 같습니다.
Code Description File Size
400 Bad Request > 512 bytes
403 Forbidden > 256 bytes
404 Not Found > 512 bytes
405 Method Not Allowed > 256 bytes
406 Not Acceptable > 512 bytes
408 Request Time-out > 512 bytes
409 Conflict > 512 bytes
410 Gone > 256 bytes
500 Internal Server Error > 512 bytes
501 Not Implemented > 512 bytes
505 HTTP Version Not Supported > 512 bytes
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/05/07 13:50 2009/05/07 13:50
,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/123

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/123

Leave a comment

Apache Error Code

100 : Continue

101 : Switching protocols

200 : OK, 에러없이 전송 성공

201 : Created, POST 명령 실행 및 성공

202 : Accepted, 서버가 클라이언트 명령을 받음

203 : Non-authoritative information, 서버가 클라이언트 요구 중 일부만 전송

204 : No content, 클라언트 요구을 처리했으나 전송할 데이터가 없음

205 : Reset content

206 : Partial content

300 : Multiple choices, 최근에 옮겨진 데이터를 요청

301 : Moved permanently, 요구한 데이터를 변경된 임시 URL에서 찾았음

302 : Moved temporarily, 요구한 데이터가 변경된 URL에 있음을 명시

303 : See other, 요구한 데이터를 변경하지 않았기 때문에 문제가 있음

304 : Not modified

305 : Use proxy

400 : Bad request, 클라이언트의 잘못된 요청으로 처리할 수 없음

401 : Unauthorized, 클라이언트의 인증 실패

402 : Payment required, 예약됨

403 : Forbidden, 접근이 거부된 문서를 요청함

404 : Not found, 문서를 찾을 수 없음

405 : Method not allowed, 리소스를 허용안함

406 : Not acceptable, 허용할 수 없음

407 : Proxy authentication required, 프록시 인증 필요

408 : Request timeout, 요청시간이 지남

409 : Conflict

410 : Gone, 영구적으로 사용할 수 없음

411 : Length required

412 : Precondition failed, 전체조건 실패

413 : Request entity too large,

414 : Request-URI too long, URL이 너무 김

415 : Unsupported media type

500 : Internal server error, 내부서버 오류(잘못된 스크립트 실행시)

501 : Not implemented, 클라이언트에서 서버가 수행할 수 없는 행동을 요구함

502 : Bad gateway, 서버의 과부하 상태

503 : Service unavailable, 외부 서비스가 죽었거나 현재 멈춤 상태

504 : Gateway timeout

505 : HTTP version not supported

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/04/13 14:19 2009/04/13 14:19
,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/115

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/115

Leave a comment

iptables 사용



내 책상위에 있는 리눅스에 아파치 가동시키고
내 책상위에 있는 윈도우에서 접속하려니 안돼는거 가지고
주임님이랑 30분정도 쌩쑈했는데...

결국은 80포트 닫혀있었다는거..;;

구글링해서 iptables 명령어 이용해서 하다가 도리어 localhost도 막혀서 잠시 당황..

그냥 gui 도구를 이용해서 80 포트 오픈~ ^^

그리고 나중에 ssh 통해서 할 것을 대비해서 리눅스에서 포트 열려면
어떻게 해야 하는지 짤막 로그.. ^^


vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

위의 양식과 같이 추가해주시고 저장하고 나와서
살포시 iptables 재시작
/etc/rc.d/init.d/iptables restart

크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/04/09 20:14 2009/04/09 20:14
, , , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/113

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/113

Leave a comment

Apache 2.2.10 + JBoss 5.x + SVN 1.5.6(+trac) [수정중]


기존 문서에 제시되어져 있는 구버전의 경우 현재에 잘 맞지않아
직접 테스트하여 작성하였습니다. 


OS: Linux Fedora 10 (x64)
환경설정만 잘 잡혀 있는 경우 JBoss는 문제없이 작동함.
#vi /etc/profile
export JAVA_HOME={JAVA_HOME}
export PATH=$PATH:$JAVA_HOME/bin
 
#source /etc/profile
 
 
Apache 2.2.10 (컴파일해서 사용)
$cd {아파치 다운 받은 폴더}
$./configure --prefix={APACHE_HOME} --enable-so --enable-expires \
--enable-headers --enable-proxy --enable-deflate --enable-rewrite \
--enable-ssl --enable-maintainer-mode --enable-dav --with-port=80
 
$make && make install
 
{APACHE_HOME}/conf/httpd.conf 수정
(자신의 환경에 맞게 설정 한 후 다음 작업)
Include conf/extra/httpd-info.conf //주석 제거

conf/extra/httpd-info.conf 파일 수정
<Location /server-status>

 SetHandler server-status

 Order deny,allow

 Deny from all

 Allow from {IP_ADDR}/{SUBNET_MASK} 127.0.0.1
//접근 허용할 IP내역 기입, 공백으로 구분

</Location>
 
 
Apache와 JBoss 연동을 위한 mod_jk
$cd {Tomcat-Connectors}/native
$./configure --with-apxs={APACHE_HOME}/bin/apxs
$make && make install
 
{APACHE_HOME}/conf/httpd.conf 수정
Include conf/mod-jk.conf //라인 추가
 
{APACHE_HOME}/conf/mod-jk.conf 파일 생성
LoadModule jk_module modules/mod_jk
 
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStamFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
JkRequestLogFormat "%w %V %T"
JkMountFile conf/uriworkermap.properties
 
{APACHE_HOME}/conf/workers.properties 파일 생성
worker.list={ANYNAME}
(worker 추가시 콤마(,)로 구분하여 추가 a,b,c)
 
worker.{ANYNAME}.port=8009
worker.{ANYNAME}.host=localhost
worker.{ANYNAME}.type=ajp13
 
{APACHE_HOME}/conf/uriworkermap.propertie 파일 생성
 /jmx-console={ANYNAME}
 /jmx-console/*={ANYNAME}
 /web-console={ANYNAME}
 /web-console/*={ANYNAME}
 
JBoss 5.x 설치
JBoss를 다운로드 받은 후 압축을 해제하여 나온 폴더를 {JBOSS_HOME}으로 함.
{JBOSS_HOME}/server/{SERVER_NAME}/deploy/jbossweb.sar/server.xml을 수정

<Connector protovol="HTTP/1.1" prot="8080" address"${jboss.bind.adress}"
  connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>

<Connector port="8009" address="${jboss.bind.address}" protocol="AJP/1.3"
         emptySessionPath="true" enableLookups="false" redirectPort="8443" />

      <Engine name="jboss.web" defaultHost="localhost" jvmRoute="{ANYNAME}" >

JBoss 5.0 MySQL설정
{JBOSS_HOME}/docs/examples/jca/안에 각종 DB설정 XML파일들이 존재함.
사용하고자 하는 DB의 xml파일을 사용하는 서버의 deploy폴더에 복사한다.
{JBOSS_HOME}/server/{SERVER_NAME}/deploy/
MySQL-DS.xml을 수정한다.
<connection-url>jdbc:mysql://mysql-hostname:3306/jbossdb</connection-url>
<user-name>x</user-name>
<password>y</password>

connection-url, user-name과 password 세부분의 정보를 알맞게 수정.

Subversion 1.5.6 설치
(default로 설치할 경우 /usr/{local|share} 사용하기 때문에 root 권한 필요, 혹은 /usr/{local|share} 소유자 변경)
$cd {SVN 다운 받은 폴더}
$./configure --prefix={SVN_HOME} --with-apxs={APACHE_HOME}/bin/apxs --with-apr={APACHE_HOME} --with-apr-util={APACHE_HOME}
$make && make install
$cd {SVN_HOME}
$./bin/svnadmin create {SVN_REPO} --fs-type fsfs
#chown -R {APACHE_USER}.{APACHE_GROUP} {SVN_REPO}
(사용할 SVN 저장소 생성하고 apache 유저/그룹에게 권한 부여)
 
svn을 사용할 httpd의 계정 {USER_ID} 생성
$cd {APACHE_HOME}/conf
$./../bin/htpasswd -c passwd {USER_ID}
New Password:
Re-type new pasword:
(위 과정인 {APACHE_HOME}/conf 폴더 밑에 passwd 파일 생성 추후에 svn을 사용할 httpd 계정 생성때에는 -c 옵션 불필요,
※주의 {APACHE_HOME}/conf 폴더 밑에서 htpasswd 파일 수행, htpasswd를 수행한 폴더에 passwd 파일 생성)
 
Subversion과 Apache 연동위한 httpd.conf 수정
apache로 svn 접속 주소: http://localhost/{SVN_REPO}
<Location /{SVN_REPO}>
 DAV svn
 SVNPath {SVN_HOME}/{SVN_REPO}
 AuthType Basic
 AuthName "blablabla"
 AuthUserFile {APACHE_HOME}/conf/passwd
 Require valid-user
</Location>
 
Trac 설치 및 설정
Trac의 경우 python으로 작성되었기에 파이썬이 없으면 사용 못함 (but 리눅스에는 python 2.4이상이 친절히 깔려있다.)
mod_python이 설치되어 있어야 하지만.. 크게 문제 없었음.
#python setup.py build
#python setup.py install
(python으로 생성하는 경우 /usr/{local|share}에 trac 폴더가 생성된다. 추후에 /usr/share/trac 밑의 폴더를 사용하게 되는데
TRAC_SHARE=/usr/share/trac/htdocs, 시스템마다 이 기본 위치는 바뀔 수 있다.)
 
trac.cgi 파일 복사
/usr/share/trac/cgi-bin/trac.cgi 파일을 {APACHE_HOME}/cgi-bin/ 밑으로 복사
 
trac home폴더 및 trac에서 사용할 저장소 생성
$mkdir {TRAC_HOME}
$cd {TRAC_HOME}
$trac-admin {TRAC_HOME}/{REPO_NAME} initenv
({REPO_NAME}과 {SVN_REPO}의 이름은 달라도 상관없음)
설치 과정에 필요한 정보를 묻는 과정은 엔터로 패스
마지막 부분에 [Path to Repository] 에서 {SVN_HOME}/{SVN_REPO} 입력
#chown -R {APACHE_USER}.{APACHE_GROUP} {TRAC_HOME}
 
trac와 아파치 연동을 위한 httpd.conf 수정
<Location /cgi-bin/trac.cgi>
 SetEnv TRAC_ENV "{TRAC_HOME}/{REPO_NAME}"
</Location>
 
<Location /cgi-bin/trac.cgi/login>
 AuthType Basic
 AuthName "blablabla"
 AuthUserFile {APACHE_HOME}/conf/passwd
 Require valid-user
</Location>
 
<Directory  {TRAC_SHARE}>
 Options Indexes MultiViews
 AllowOverride None
 Order allow,deny
 Allow from all
</Directory>
 
Trac 사용중 소스 코드에 한글이 포함되는 경우 깨져서 보일 것이다.
그냥 ini파일 수정 하면 된다.
{TRAC_HOME}/conf/trac.ini
#default_charset=iso-blablabla을
default_charset=utf-8 으로 수정
 
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/03/20 08:53 2009/03/20 08:53
, , , ,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/82

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/82

Leave a comment

Apache + Tomcat


리눅스에서 아파치 HTTP서버와 Tomcat6 설정

아파치, 톰캣 연동하기

리눅스에서 mod_jk를 이용한 아파치, 톰캣 연동

리눅스에서 modproxy를 이용한 아파치, 톰캣 연동



대용량 웹 서비스를 위한 아파치, 톰캣 연동


Mac에서 둘 연동시키는 것 해보는중..;;
근데 역시나 잘 안됨.. ㅎㅎ
fedora10에서 httpd 2.2.10/ Tomcat 6.0.18.0 테스트 하고 있음.. ㅋㅋ
httpd는 기본으로 설치되는거 사용하고 있고,
tomcat은 yum을 설치해서 둘 연동시키는중..;;
원래 쉬워야 되는거아냐? ㅋㅋ
크리에이티브 커먼즈 라이센스
Creative Commons License

Posted by gwlee

2009/02/19 11:27 2009/02/19 11:27
, ,
Response
0 Trackbacks , 0 Comments
RSS :
http://thegreatgoodplace.com/tt/study/rss/response/74

Trackback URL : http://thegreatgoodplace.com/tt/study/trackback/74

Leave a comment

블로그 이미지

gwLee's Study story

- gwlee



Site Stats

Total hits:
50194
Today:
21
Yesterday:
97