只是記錄下安裝過程,方便下次直接拷貝,省的在去查找一些選項。python
CentOS6安裝完成後自帶的有Apache2.2和subversion1.6,那咱們就先來看系統自帶的如何配置:sql
1、用系統自帶的Apache和svn配置apache
一、添加svn用戶vim
# useradd -r -s /sbin/nologin svn
二、配置Apache的配置文件
瀏覽器
# mkdir -pv /www/svnroot/ # 爲svn創建庫目錄 # chown -R svn.svn /www/svnroot/ # 更改權限 # cd /etc/httpd/conf.d # 編輯配置文件 # vim subversion.conf LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn/> # 定義訪問是的路徑;例如http://IP/svn DAV svn SVNParentPath /www/svnroot # SVN的庫路徑 SVNListParentPath on # 容許列出目錄 AuthzSVNAccessFile /www/svnroot/authz # 認證文件 #RedirectMatch ^(/svn)$ $1/ AuthType Basic # 基本認證 AuthName "Subversion Auth" # 認證提示信息 AuthUserFile /www/svnroot/password # 認證密碼文件 Require valid-user # 必須爲有效的用戶 </Location> # service httpd start
三、建立版本庫並測試:ide
# cd /www/svnroot # svnadmin create platform # chown -R svn.svn * # cp platform/conf/authz . # vim authz [aliases] # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average [groups] # 定義組 group_platform_admin = admin # 組內成員 [/] # 根目錄全部用戶的瀏覽權限 * = r [platform:/] # 每一個版本庫的對應權限 @group_platform_admin = rw # 權限 # htpasswd -c password admin # 生成密碼文件和添加用戶 到此,就能夠正常訪問了。
此時能夠在瀏覽器裏輸入地址訪問,也能夠是用客戶端訪問。svn
2、源碼編譯安裝測試
一、解決依賴包ui
yum -y install pcre-devel perl-ExtUtils-Embed perl perl-devel yum -y remove subversion
二、下載須要的源碼包rest
apr-1.5.1.tar.bz2 apr-util-1.5.4.tar.bz2 httpd-2.4.12.tar.gz sqlite-autoconf-3080802.zip subversion-1.8.10.tar.bz2 zlib-1.2.8.tar.gz expat-2.0.1.tar.gz
三、編譯
apr ./configure --prefix=/usr/local/apr make && make install apr-util ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/ make && make install httpd-2.4.12 ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event --enable-proxy --enable-proxy-fcgi --enable-dav --enable-dav-fs --enable-maintainer-mode make && make install # 編譯完成後添加環境變量: vim /etc/profile.d/apache.sh export PATH=/usr/local/apache/bin/:$PATH . /etc/profile.d/apache.sh # 生效 expat ./configure make && make install sqlite ./configure --prefix=/usr/local/sqlite --enable-libtool-lock make && make install subversion ./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-apxs=/usr/local/apache/bin/apxs --with-apache-libexecdir --with-sqlite=/usr/local/sqlite/ --with-openssl --enable-maintainer-mode make && make install # 編譯完成後添加環境變量: vim /etc/profile.d/svn.sh export PATH=/usr/local/svn/bin/:$PATH . /etc/profile.d/svn.sh #生效
以上編譯過程請注意是否有報錯,若是有報錯,解決後在進行下一步的安裝操做。
四、配置Apache
# 在Apache編譯完成後,因爲系統自帶的Apache是不須要卸載的,直接到/etc/init.d/目錄下。 cd /etc/init.d/ cp httpd{,.bak} vim httpd apachectl=/usr/local/apache/bin/apachectl httpd=${HTTPD-/usr/local/apache/bin/httpd} prog=httpd pidfile=${PIDFILE-/var/run/httpd/httpd.pid} lockfile=${LOCKFILE-/var/lock/subsys/httpd} # 把這個幾個對應的路徑改一改,pidfile在配置文件中要定義下路徑,並把error log的路徑也寫全了,這樣方便排錯 # 而後在配置文件中添加以下行: 在LoadModule裝載的路徑後面添加下面兩行: LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so # 注意:把啓動的用戶和組改爲SVN使用的用戶和組,不然沒有寫權限,或者把SVN的目錄的屬主屬組更改成運行Apache的也行。 # 在其餘位置添加以下: <Location /svn/> DAV svn SVNParentPath /data/svn AuthzSVNAccessFile /data/svn/authz #SVNListParentPath on AuthType Basic AuthName "Subversion Auth" AuthUserFile /data/svn/password Require valid-user </Location> # service httpd restart
五、配置svn的庫以及認證文件,如第一個配置是同樣的。
六、訪問測試
測試如上。客戶端訪問也是同樣的。