CentOS SVN+Apache 第一步:安装apache subversion yum install httpd httpd-devel subversion mod_dav_svn 验正:ls /etc/httpd/modules | grep svn 验证svn模块(mod_dav_svn)是否正确安装,如正确安装,系统会提示: mod_authz_svn.so mod_dav_svn.so 版本:svn –version 第二步:创建SVN库和项目 1:mkdir /svn (创建SVN库) 2:svnadmin create /svn/pongo (创建项目) 第三步:添加组及组员权限 chown -R apache.apache /svn 第四步:修改项目权限 chmod –R 777 /svn/pongo 第五步:配置httpd vim /etc/httpd/conf/httpd.conf 首先,你要在改文本中寻找到LoadModule那块代码 增加如下模块: LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so (说明:第一条是为了使客户端能够通过Apache来访问SVN档案库,Apache需要家长mod_dav_svn模块。如果Apache是按照与预设目录安装的,mod_dav_svn模块应该会安装在Apache安装位置(默认路径是/etc/httpd/)的modules子目录内。同时在Apache的配置文件httpd.conf(默认路径是etc/httpd/conf/)中已经使用LoadModules指令加载了该模块,如果没有,手动添加。 且这个指定必须出现在其他的Subversion相关指令之前。还要加载mod_authz_svn.so模块) 一般来说apache2都已正常加载了这两个模块 service httpd start (验下配置文件是否有语法错误)第六步:配置SVN vim /etc/httpd/conf.d/subversion.conf (编辑subversion.conf) <Location /svn/> #注意目录路径后要以“/”作为结束 DAV svn SVNListParentPath on SVNParentPath /svn AuthType basic AuthName "Authorization Realm" AuthzSVNAccessFile /svn/pongo/conf/authz AuthUserFile /tmp/passwd Require valid-user </Location> vim /svn/pongo/conf/authz(针对不同用户给予不同权限) [groups] admin = user1,user2 #组名是自己随便定义的,路系统组无关,是一个虚拟的。 [svn:/] @admin = rw 第七步:建立用户 htpasswd –c /svn/passwd xiaoming htpasswd /svn/passwd lihui 注:第一次添加用户使用参数“-c”以后再添加就不同了 系统提示: New password: Re-type new password 第八步:重启服务 service httpd restart (重启apache) service svnserve restart (启动svn服务) 第八步:防火墙 iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 3690 -j ACCEPT iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT iptables -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 注:svn://10.0.1.188/pongo 使用的是tcp 3690端口 (责任编辑:IT) |