Linux SVN 和 apache的整合
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Linux SVN 和 apache的整合,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5342字,纯文字阅读大概需要8分钟。
内容图文
需要软件包:
apr-1.5.2.tar.gz
apr-util-1.5.4.tar.gz
httpd-2.4.23.tar.gz
openssl-1.0.1.tar.gz
sqlite-autoconf-3140100.tar.gz
subversion-1.9.4.tar.gz
zlib-1.2.8.tar.gz
一.安装apr和apr-uti
#mkdir -p /app/3rd
#mkdir -p /data/software
#wget http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz
#tar zxvf apr-1.5.2.tar.gz
#cd apr-1.5.1
#./configure --prefix=/usr/local/apr( 如果报错 rm: cannot remove `libtoolT‘: Nosuch file or directory ,直接打开 configure ,把 $RM “$cfgfile” 即 30145 行删除掉,重新再运行 ./configure 就可以了。 )
#make && make install
验证:
#/usr/local/apr/bin/apr-1-config --version
1.5.1
#cd /data/software
#wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.4.tar.gz
#tar zxvf apr-util-1.5.4.tar.gz
#cd apr-util-1.5.4
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
#make && make install
验证:
#/usr/local/apr-util/bin/apu-1-config --version
1.5.4
二.安装sqlite3
#wget http://www.sqlite.org/2013/sqlite-autoconf-3080000.tar.gz
#tar zxvf sqlite-autoconf-3080000.tar.gz
#cd sqlite-autoconf-3080000
#./configure
#make && make install
三.安装openssl
#wget http://www.openssl.org/source/openssl-1.0.1.tar.gz
#tar xzvf openssl-1.0.1.tar.gz
#cd openssl-1.0.1
# . / config - fPIC -- prefix = / usr/local / openssl / enable - shared
#make && make install
四.安装apachehttp server 和ssl model
#wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.29.tar.gz
#tar zxvf httpd-2.2.29.tar.gz
#export LDFLAGS=-ldl
#cd httpd-2.2.29
#./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-so --enable-dav --enable-maintainer-mode --enable-rewrite --enable-ssl --with-ssl=/usr/local/openssl
#make && make install
设置开机启动
#cp /usr/local/apache/bin/apachectl /etc/init.d/httpd
# 编辑 /etc/init.d/httpd, 在第二行增加如下内容
#chkconfig: 2345 85 35
#chkconfig httpd on
通过service httpd start启动服务,正常情况下会提示启动成功,通过在其他电脑上打开浏览器浏览这台服务器IP的80端口服务,如果出现Itworks 字样,恭喜您,安装成功
如果出现
httpd: Could not reliably determine the server’s fullyqualified domain name,
只需要编辑
httpd.conf
将里面的
#ServerName www.example.com:80
注释去掉即可
,,
并改成
ServerName 127.0.0.1:80
如果出现
Cannot load modules/mod_ssl.so into server:libssl.so.1.0.0:
执行:
# cp/usr/local/openssl/lib/libssl.so.1.0.0 /usr/lib64/
# cp/usr/local/openssl/lib/libcrypto.so.1.0.0 /usr/lib64/
五.安装zlib
#wget http://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
#tar -xvzf zlib-1.2.8.tar.gz
#cd zlib-1.2.8
#./configure
#make && make install
六.安装subversion1.8.10
#wget http://mirror.esocc.com/apache/subversion/subversion-1.8.10.tar.gz
#tar zxvf subversion-1.8.10.tar.gz
#mkdir -p ./subversion-1.8.10/sqlite-amalgamation
#cp ./sqlite-autoconf-3080000/sqlite3.c ./subversion-1.8.10/sqlite-amalgamation
#cd subversion-1.8.10
#./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-zlib --enable-maintainer-mode
#make && make install
验证:
#/usr/local/subversion/bin/svnserve --version
svnserve, version 1.8.10 (r1534716)
七、整合Apache
拷贝模块
#cp /usr/local/subversion/libexec/mod_authz_svn.so /usr/local/apache/modules/
#cp /usr/local/subversion/libexec/mod_dav_svn.so /usr/local/apache/modules/
编辑
http.conf
文件
#vim /usr/local/apache/conf/httpd.conf
在最后面增加如下内容
# 加载整合svn所需so文件
################for svn#################3
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
#svn父目录
SVNParentPath /data/zpy/svn
#权限配置文件
AuthzSVNAccessFile /data/zpy/svn/authz
#连接类型设置
AuthType Basic
#连接框提示
AuthName "Subversion.zoneyump"
#用户配置文件
AuthUserFile /data/zpy/svn/passwd
#采用何种认证
Require valid-user
</Location>
八、配置Subversion
1)
建立svn版本库目录
#mkdir -p /data/zpy/svn/{its,ism}
#touch authz
#touch passwd
可以多建版本库目录,这里我的目录是its,ism
2
)建立svn版本库
#svnadmin create /data/zpy/svn/ism
#svnadmin create /data/zpy/svn/its
因为
apache
的线程使用的用户是
apache
#chown -R apache.apache /data/zpy/svn
#chmod -R 755 /data/zpy/svn
3
)建立本地访问控制文件
#/usr/local/apache/bin/htpasswd -cm /data/zpy/svn/passwd user1
注意:如果没有文件就创建它并且给予
755
的权限。
然后输入密码即可,默认是
MD5
加密的
添加新用户
#/usr/local/apache/bin/htpasswd /data/zpy/svn/passwd user2
4
)建立本地项目控制文件
#vim/data/zpy/svn/authz
本例
authz
内容为:
[groups]
admin = user01
dev3-web = user01,user02
[/]
@admin = rw
@dev3-web = r
[/ism]
@dev3-web = rw
[/its]
@dev3-web = rw
测试连接
1
)启动
apache
#service httpd start
#svnserve -d -r /data/zpy/svn/ism/
#svnserve -d -r /data/zpy/svn/its
2 )再浏览器访问http://192.168.1.100/svn/its
在本机上通过svn客户端访问不能用svn://192.168.1.100/svn/its
只能用checkouthttp://192.168.1.100/svn/ism
#
本例服务器ip是192.168.1.100
使用刚才创建的权限用户名与密码登录即可访问
客户端操作
#mkdir /data/svncheck
#cd /data/svncheck
#svn checkout http://10.0.70.242/svn/ism --username=user01 --password=123456
#cd ism/
#touch ism.txt
#svn add ism.txt 用add把新增的文件添加进去
#svn commit --force-log -m "ism.txt" commit正式提交
#svn update ism.txt 更新
#svn lock -m "lock test file" ism.txt 加锁
#svn unlock ism.txt 解锁
#svn info ism.txt 查看信息
#svn update -r 1 ism.txt 更新到1版本
#svn update 如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
#svn update ism.txt 更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件然后清除svn resolved,最后再提交commit)
#svn delete ism.txt
#svn ci -m ‘delete test file‘ 删除文件
#svn log ism.txt 查看日志
原文:http://zhouxinyu1991.blog.51cto.com/6095086/1847321
内容总结
以上是互联网集市为您收集整理的Linux SVN 和 apache的整合全部内容,希望文章能够帮你解决Linux SVN 和 apache的整合所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。