设为首页 收藏本站
查看: 572|回复: 0

[经验分享] linux下SVN的借助apache安装

[复制链接]

尚未签到

发表于 2015-8-1 09:44:32 | 显示全部楼层 |阅读模式
  1.下载subversion和apache的最新src包
http://subversion.apache.org/download/下载subversion-1.6.17.tar.gz
http://httpd.apache.org/download.cgi#apache22下载: httpd-2.2.20.tar.gz
http://www.oschina.net/news/18474/subversion-1-6-17
http://subversion.tigris.org/servlets/ProjectDocumentList?collapseFolder=254&folderID=260
  2.新建一个用户:svnroot ,以下操作非特别说明皆为root用户操作



groupadd svn
useradd svnroot -g svn
passwd svn
  3.解压apache2安装包(此处要指出安装包所在的路径)



tar xvzf httpd-2.2.20.tar.gz
cd httpd-2.2.20
./configure --enable-dav --enable-so --prefix=/usr/local/apache2/
make
make install
  4.启动apache服务



/usr/local/apache2/bin/apachectl start
  //打开浏览器http://localhost/如果有测试页"It works!"出现则证明已经安装成功。
注:httpd服务的默认端口是80,此处若发现80端口已被占用,在httpd.conf文件中修改listen 80为listen 81(或其他未被占用的端口),修改完成后要重启apache服务。
  *************************************************开始***********************************************************
执行命令的时候出现:
error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
解决办法如下:
1.在/etc/ld.so.conf中加一行/usr/local/lib,
2.然后运行/sbin/ldconfig
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
解决办法非常简单:
#vim /usr/local/apache2/conf/httpd.conf (在这里/web/apahce是我安装apache的目录,你默认安装的话应该是/usr/local/apache2/icons)
找到#ServerName www.example.com:80   把#去掉,再重启apache即可没事了。
*************************************************结束***********************************************************
  安装Subversion



tar xvzf Subversion-1.6.17.tar.gz
cd Subversion-1.6.17
./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode --enable-dav --enable-so
make
make install
  ****************************************************开始*******************************************************
* configure可能存在的问题及解决方法
1. configure: error: could not find library containing RSA_new
o yum install openssl-devel
2. configure: error: no XML parser was found: expat or libxml 2.x required
o yum install expat-devel
3. configure: error: --with-zlib requires an argument.
o 去掉此选项。
* httpd: Syntax error on line 54 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
o make sure you have your apache compiled with the dav options:
--enable-dav --enable-dav-fs --enable-dav-lock
在make的时候,.configure之后,进行make,出现如下问题
/usr/bin/ld: cannot find -lexpat
collect2: ld returned 1 exit status
make: *** [subversion/svn/svn] Error 1
应该是缺少-lexpat库文件。
解决方法:
yum install expat expat-devel
安装了之后,svn的make就过了
***************************************************结束*******************************************************



#创建库文件所在的目录(svnroot用户进行下面的操作)
mkdir /home/svnroot/repository
#创建仓库"test"
/usr/local/subversion/bin/svnadmin create /home/svnroot/repository/test
#查看svn是否安装成功
/usr/local/subversion/bin/svnadmin --version
#不让其他人有该目录的权限
chmod 700 /home/svnroot/repository
#(svnroot用户操作结束)
  修改Apache配置文件



vi /usr/local/apache2/conf/httpd.conf
#找到下列语句,如果没有则自行添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
#在后面添加

DAV svn
#svn父目录
SVNParentPath /home/svnroot/repository/
#权限配置文件
AuthzSVNAccessFile /home/svnroot/repository/authz.conf
#连接类型设置
AuthType Basic
#连接框提示
AuthName "Subversion.zoneyump"
#用户配置文件
AuthUserFile /home/svnroot/repository/authfile
#采用何种认证
Require valid-user

  重启apache



/usr/local/apache2/bin/apachectl restart
  打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。
  权限管理



#增加用户
htpasswd -c /home/svnroot/repository/authfile 用户名
#第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
htpasswd /home/svnroot/repository/authfile 用户名(加入新的用户,就不用-c了)
#权限分配
vi /home/svnroot/repository/authz.conf
[groups]
admin=useradmin
#这里定义了一个用户组
devteamcs = useradmin,user1,user2
#对所有的项目,所有的用户都有读权限,admin用户有读写权限
[/]
@admin = rw
* = r
#对test项目
[test:/]
@devteamcs = rw
  在/usr/local/apache2/conf/httpd.conf文件中配置,找到文件中的这两行:
User daemon
Group daemon
  将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行
改完后是这个样子
User svnroot
Group svn
重启apache
/usr/local/apache2/bin/apachectl restart
访问http://localhost/svn/test提示输入用户名密码,输入创建的用户名和密码登录进去看到“Revision 0: /”之类的就表示成功啦!至此apache+svn配置完成。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-92906-1-1.html 上篇帖子: Apache的FileUpload组件(转) 下篇帖子: Apache Synapse介绍(译)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表