服务器环境:centos6.5 32位 192.168.4.221
方便起见,统一用root用户操作
安装apache
# yum install httpd httpd-devel
# service httpd start
# chkconfig httpd on
# vi /etc/httpd/conf/httpd.conf
找到 ServerName 并修改成
ServerName localhost:80
防火墙中打开80端口:
# vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# service iptables restart
http://192.168.4.221/
安装SVN服务
# yum install mod_dav_svn subversion
必须安装mod_dav_svn 模块
安装完svn后要重启apache
# service httpd restart
查看测试是否安装svn 模块
# ls /etc/httpd/modules/ | grep svn
mod_authz_svn.so
mod_dav_svn.so
# svn --version
创建svn库主目录(多库模式,一份配置文件管理多个库)
# mkdir /svn/
# cd /etc/httpd/conf.d
# ls
此时可以看到一个subversion.conf配置文件(是在安装 mod_dav_svn模块时生成的)
添加以下内容
# vi subversion.conf
<Location /svn/>
DAV svn
SVNListParentPath on
SVNParentPath /svn
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile /svn/passwd.http
AuthzSVNAccessFile /svn/authz
Require valid-user
</Location>
RedirectMatch ^(/svn)$ $1/
----------------------------------------------
创建/svn/passwd.http和/svn/authz
# touch /svn/passwd.http
# touch /svn/authz
重启apache
# service httpd restart
安装MySQL
请参考我的博客文章【】
安装Tomcat
请参考我的博客文章【http://blog.csdn.net/wx5040257/article/details/78081310】
额外配置:
# vi /usr/apache-tomcat-7.0.29/conf/server.xml
<Connector port="9000" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
加上utf-8配置,否则可能会出现乱码问题。当然,端口号也可以不改,这里改成9000是为了方便区别其它服务器
启动tomcat
# service tomcat start
下载:https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip
简介:
JSvnAdmin是一个Java开发的管理Svn服务器的项目用户的web应用。
安装好Svn服务器端好,把Svn Admin部署好,就可以通过web浏览器管理Svn的项目,管理项目的用户,管理项目的权限。
使得管理配置Svn简便,再也不需要每次都到服务器手工修改配置文件。
从zip包中解压出svnadmin.war,然后放到tomcat的webapps目下即可。
# cd svnadmin/WEB-INF
# vi jdbc.properties
内容改为如下
db=MySQL
#MySQL
MySQL.jdbc.driver=com.mysql.jdbc.Driver
MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8
MySQL.jdbc.username=root
MySQL.jdbc.password=test123
创建svnadmin 数据库并导入相应数据(UTF-8 编码)
执行db/mysql5.sql 和 db/lang/en.sql
重启tomcat
# service tomcat restart
浏览器中打开:http://192.168.4.221:9000/svnadmin/
如:输入admin,test123
创建库
点提交,如下图:
此时:
/svn/目录下会创建一个dayhr的SVN库目录。
同 时 也 会 多 出 一 个 httpd.conf 文 件 , 内 容 与 subversion.conf 一 样 , 在
/etc/httpd/conf.d/subversion.conf中已配置。
/svn/authz 授权文件中会多出如下内容:
[aliases]
[groups]
dayhr_developer=
dayhr_manager=
dayhr_tester=
[dayhr:/]
@dayhr_manager=rw
以上过程其实是调用了 svn 对应的命令做了相应的操作
这时候进入项目管理界面,如图所示,会出现未认证的问题:
解决方式,配置库的目录权限
# cd /svn
# chown -R apache.apache dayhr
# chmod -R 777 dayhr
(如创建新库,需要对新建的库目录执行以上两步授权操作)
关闭SELinux(Linux的访问控制)
修改/etc/selinux/config 文件
# vi /etc/selinux/config
将SELINUX=enforcing 改为SELINUX=disabled
重启机器即可
# reboot
接下来就可以按照界面提示进行用户和项目管理了。