WEB开发网
开发学院操作系统CentOS Apache+Subversion完美结合 阅读

Apache+Subversion完美结合

 2010-06-08 22:39:38 来源:WEB开发网   
核心提示:本节主要介绍CentOS下Apache+Subversion下如何实现版本控制,包括在apache中配置SVN以及测试连接等内容,Apache+Subversion完美结合,在apache中配置SVNCentOS下Apache+Subversion下实现版本控制要对Apache中SVN进行配置vi/usr/local/

本节主要介绍CentOS下Apache+Subversion下如何实现版本控制,包括在apache中配置SVN以及测试连接等内容。

在apache中配置SVN
CentOS下Apache+Subversion下实现版本控制要对Apache中SVN进行配置vi/usr/local/apache2.2.9/conf/httpd.conf

①如果你看到如下两句,说明安装是成功的
LoadModuledav_svn_modulemodules/mod_dav_svn.so
LoadModuleauthz_svn_modulemodules/mod_authz_svn.so
如果有下面一句就用#注释掉
#LoadModulefoo_modulemodules/mod_foo.so

②定义apache访问svn配置:

  1. <Location/svn> 
  2. DAVsvn  
  3. #SVNPath/opt/svndata  
  4. SVNParentPath/opt/svndata  
  5. AuthzSVNAccessFile/opt/svn/conf/authz.conf  
  6. AuthTypeBasic  
  7. AuthName"Subversionrepository"  
  8. AuthUserFile/opt/svn/conf/passwd.conf  
  9. Requirevalid-user  
  10. Location> 

配置svn CentOS下Apache+Subversion下实现版本控制要配置SVN,

①建立svn版本库目录
mkdir-p/opt/svndata/repos#可以多建版本库目录

②建立svn版本库
svnadmincreate/opt/svndata/repos
mkdir-p/opt/svndata/repos#可以多建版本库

③建立本地访问控制文件
/usr/local/apache2.2.9/bin/htpasswd-c/opt/svn/conf/passwd.confusername
然后输入密码即可,默认是MD5加密的
/usr/local/apache2.2.9/bin/htpasswd/opt/svn/conf/passwd.confusername1#追加用户

④建立本地项目控制文件
touch/opt/svn/conf/authz.conf
本例authz.conf内容为:

  1. [groups]  
  2. #<groupname1>=<username1>,<username2> 
  3. admin=username 
  4. #[<versionLib>:projectName/directory]  
  5. #@<groupsname>=<authorities> 
  6. #<username>=<authorities> 
  7. [/]  
  8. @admin=rw#指定用户组成员可以读写根目录所有应用  
  9. [repos:/abc/aaa]  
  10. username1=rw#指定用户username1可以读写:/abc/aaa目录的文件,至此,整个安装过程完成了!  

测试连接
CentOS下Apache+Subversion下实现版本控制,要进行测试连接。

①启动apache
/usr/local/apache2.2.9/bin/apachectlstart

②打开浏览器,输入http://192.168.1.107/svn/repos#本例服务器ip是192.168.1.107
使用刚才创建的权限用户名与密码登录即可访问
注意:在你上传文件的时候可能会有如下权限不足的提示
Permissiondenied
svn:Commitfailed(detailsfollow):
svn:Can'tcreatedirectory'/opt/svndata/repos/db/transactions/0-1.txn':Permissiondenied
这是因为apache在线程用户没有权限访问svn的仓库,两者分别属于不同的用户者,本例apache属于daemon拥有者,而svn仓库属于svn拥有者。
解决方法:chown-Rdaemon/opt/svndata/repos,chmod-R755/opt/svndata/repos

重启下apache:
/usr/local/apache2.2.9/bin/apachectlstop
/usr/local/apache2.2.9/bin/apachectlstart
"CouldnotopentherequestedSVNfilesystem"errorcode=2
如果出现这个错误你就得看一下Apache的httpd.conf文件里面相关版本库路径是不是正确,请确保使用的是绝对路径.CentOS下Apache+Subversion下实现版本控制讲解完毕。

Tags:Apache Subversion 完美

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接