Apache Httpd 2.4 SubVersion 구성하기

##########
윈도우 경우
1. 윈도우용 Apache Httpd 설치
http://mirror.apache-kr.org//httpd/binaries/win32/httpd-2.2.19-win32-x86-openssl-0.9.8r.msi

2. Subversion 서버 설치 후 .so 파일 apache httpd 의 modules 디렉토리로 복사
http://sourceforge.net/projects/win32svn/files/1.6.17/Setup-Subversion-1.6.17.msi/download
copy "c:\Program Files\Subversion\bin\mod_dav_svn.so" "c:\Program Files\Apache Software Foundation\Apache2.2\modules\"
copy "c:\Program Files\Subversion\bin\mod_authz_svn.so" "c:\Program Files\Apache Software Foundation\Apache2.2\modules\"

3. Apache Httpd httpd.conf 설정 변경 (C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf)
Listen 8080
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn_ysoftman>
DAV svn
SVNPath c:\svn_repository
AuthType Basic
AuthName "ysoftman"
AuthUserFile c:\svn_password\svn.password
Require valid-user
</Location>

4. Apache Httpd 에서 svn 사용자 계정 생성
C:\Program Files\Apache Software Foundation\Apache2.2\bin>mkdir c:\svn_password
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd -cm c:\svn_password\svn.password 사용자아이디1
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd c:\svn_password\svn.password 사용자아이디2
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd c:\svn_password\svn.password 사용자아이디3
...
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd c:\svn_password\svn.password 사용자아이디n

5. 서버에서 저장소(Repository) 생성
c:\>mkdir svn_repository
c:\>C:\Program File\Subversion\bin\svnadmin create --fs-type fsfs c:\svn_repository

6. Apache Httpd 재시작

7. 클라이언트에서 CheckOut 으로 확인(윈도우 TortoiseSVN 사용, 작동안될 경우 윈도 방화벽 설정에서 8080 포트는 예외처리)
svn checkout http://127.0.0.1:8080/svn_ysoftman ysoftman

##########
리눅스 경우
1-0. 리눅스용 Apache Httpd 설치전 필요한 프로그램 설치
sudo yum install -y expat-devel pcre-devel zlib-devel libxml2-devel openldap-devel openssl-devel

1-1. apache httpd 2.4 부터는 apr, apr-util 을 따로 설치해 줘야 한다.
wget http://apache.mirror.cdnetworks.com/apr/apr-1.6.3.tar.gz
tar zxvf apr-1.6.3.tar.gz
cd apr-1.6.3
./configure --prefix=/home/ysoftman/apr
make && make install
cd ..
wget http://apache.mirror.cdnetworks.com/apr/apr-util-1.6.1.tar.gz
tar zxvf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/home/ysoftman/apr-util --with-apr=/home/ysoftman/apr
make && make install
cd ..

1-2. apache http 2.4 빌드 및 설치
wget http://apache.mirror.cdnetworks.com/httpd/httpd-2.4.29.tar.gz
tar zxvf httpd-2.4.29.tar.gz
cd httpd-2.4.29
# prefix 를 명시하지 않으면 디폴트는 /usr/local/apache2
./configure --prefix=/home/ysoftman/httpd --with-apr=/home/ysoftman/apr --with-apr-util=/home/ysoftman/apr-util --with-mpm=prefork --enable-mods-shared="rewrite alias dir"
make && make install

2. Subversion 서버 설치(root 권한)
yum install -y subversion

3. Apache Httpd httpd.conf 설정 변경
Listen 8080
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn_ysoftman>
DAV svn
SVNPath /home/svn_repository
AuthType Basic
AuthName "ysoftman"
AuthUserFile /home/svn_password/svn.password
Require valid-user
</Location>

4. Apache Httpd 에서 svn 사용자 계정 생성
mkdir /home/svn_password
httpd/bin/htpasswd -cm /home/svn_password/svn.password 사용자아이디1
httpd/bin/htpasswd /home/svn_password/svn.password 사용자아이디2
httpd/bin/htpasswd /home/svn_password/svn.password 사용자아이디3
...
httpd/bin/htpasswd /home/svn_password/svn.password 사용자아이디n

5. 서버에서 저장소(Repository) 생성
svnadmin create --fs-type fsfs /home/svn_repository

6. Apache Httpd 재시작(root 권한)
httpd/bin/apachectl restart

7. 클라이언트에서 CheckOut 으로 확인
svn checkout http://127.0.0.1:8080/svn_ysoftman ysoftman

comments:

댓글 쓰기