vincen 发表于 2018-11-24 11:12:36

centOS下SVN+Apache 配置

  准备工作:
  安装好apache Web 服务器
  安装svn
  先下载:
  subversion-1.6.1.tar.gz subversion-deps-1.6.1.tar.gz
  解压:
  tar -zxvf subversion-1.6.1.tar.gz
  tar -zxvf subversion-deps-1.6.1.tar.gz
  ./configure --prefix=/usr/local/svn/
  make && make install
  添加svn命令到环境变量
  echo "export PATH=$PATH:/usr/local/svn/bin/" >> /etc/profile
  source /etc/profile
  1.建立svn版本库目录
  mkdir -pv /home/svnroot/data
  chown -Rv apache /home/svnroot/data
  chmod -Rv 755 /home/svnroot/data
  2.建立svn版本库
  /usr/local/subversion/bin/svnadmin create --fs-type fsfs /home/svnroot/data/project1
  3.建立访问控制文件
  /usr/local/apache/bin/htpasswd -c /home/svnroot/data/passwduser1#第一次加用户名添加-c参数
  /usr/local/apache/bin/htpasswd/home/svnroot/data/passwduser2
  4.建立本地项目控制文件
  cd /home/svnroot/data
  vi authz
  
  admin=user1
  develop=user2,user3
  
  @admin = rw
  @develop = r
  cat /usr/local/apache2/conf/httpd.conf | grep svn
  显示
  LoadModule dav_svn_module   modules/mod_dav_svn.so
  LoadModule authz_svn_module   modules/mod_authz_svn.so
  就表明安装成功。
  vi /usr/local/apache/conf/httpd.conf
  添加
  
  DAV svn
  SVNParentPath /home/svnroot/data
  AuthType Basic
  AuthName "Subversion"
  AuthUserFile /home/svnroot/data/passwd
  AuthzSVNAccessFile /home/svnroot/data/authz
  Require valid-user
  
  5.启动apache
  /usr/local/apache2/bin/apachectl start
  如果启动的时候出现:
  httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf:
  Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server:
  /usr/local/apache2/modules/mod_dav_svn.so:
  undefined symbol: dav_register_provider
  解决办法:
  重新对apache做./configure 增加参数
  ./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd --with-include-apr --with-pcre --enable-maintainer-mode --enable-dav --enable-modes-shared=most --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
  make && make install
  再次启动apache如果出现警告:
  httpd: apr_sockaddr_info_get() failed for linux(在BSD上是apr_sockaddr_info_get() failed for freebsdla)

  httpd: Could not>  解决办法:
  修改apache配置文件httpd.conf 添加ServerName为本机用户名
  再次启动/usr/local/apache2/bin/apachectl start
  成功!
  访问测试:http://ip/svn/project1
  完成。。。。

页: [1]
查看完整版本: centOS下SVN+Apache 配置