linux+svn+Apache

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xixiaoxie2/article/details/50156869

下载安装文件:
apache:http://httpd.apache.org/ httpd-2.2.29.tar.gz
svn:
http://subversion.tigris.org/downloads/subversion-1.6.12.tar.gz
http://subversion.tigris.org/downloads/subversion-deps-1.6.12.tar.gz
注意版本,apache2.2.3和svn1.4.0也可以

step1:安装Apache
1.解压httpd-2.2.29.tar.gz
2.进入解压后的目录:httpd-2.2.29
依次执行:./configure -prefix=/app/wzf/apache -enable-dav -enable-so
make
make install
(这三个步骤的意义在下一篇文章中)
3.测试Apache是否安装成功能够正常启动:
{Apache_home}/bin/httpd -k stop
{Apache_home}/bin/httpd -k start
{Apache_home}/bin/httpd -k restart

启动时遇到的问题:
1.端口占用
Apache启动端口占用
解决:
vi {Apache_home}/conf/httpd,修改里面的端口设置
2.未确定服务器地址
Apache启动未设置服务地址
解决:
vi {Apache_home}/conf/httpd,在里面加上:
ServerName localhost:8090

访问:http://ip:port 显示it works说明安装成功!
成功后解压目录httpd就可以删掉了

step2:安装subversion
1.解压subversion-deps-1.6.0.tar.gz到subversion-1.6.0
2.解压subversion-1.6.0.tar.gz到subversion-1.6.0(同一目录)
3.删掉subversion-1.6.0/apr和subversion-1.6.0/apr-util,用Apache的就可以
4../configure -prefix=/app/wzf/subversion-with-apache -with-apxs=/app/wzf/apache/bin/apxs -with-apr=/app/wzf/apache/bin/apr-1-config -with-apr-util=/app/wzf/apache/bin/apu-1-config

报错configure报错1
原因:缺少expat包,下载expat-2.1.0.tar.gz,解压,./configure,make,make install(可能make install的时候需要root权限,因为Makefile里面指定的安装路径在/usr/local下)。即可。

报错configure报错2
原因:缺少OpenSSL包,下载openssl-1.0.0a.tar.gz,解压,./configure,make,make install
注:make时提示Nothing to be done for `all’意思是已经编译好了,而且没有对代码进行任何改动。

再./configure -prefix=/app/wzf/subversion-with-apache -with-apxs=/app/wzf/apache/bin/apxs -with-apr=/app/wzf/apache/bin/apr-1-config -with-apr-util=/app/wzf/apache/bin/apu-1-config –with-openssl=/app/wzf/openssl
提示缺少BDB存储,可忽略
这段提示可忽略,因为不使用BDB存储。

5.make
报错make报错1
原因:编译中安装了libserf导致的
解决:configure的时候加一个参数:–without-serf,然后再重新make

* ./configure -prefix=/app/wzf/subversion-with-apache -with-apxs=/app/wzf/apache/bin/apxs -with-apr=/app/wzf/apache/bin/apr-1-config -with-apr-util=/app/wzf/apache/bin/apu-1-config -with-openssl=/app/wzf/openssl -without-serf
make
make install

6.可以执行svn help看下是否安装成功。

step3:配置Apache访问
1.检查svn是否与Apache兼容
查看Apache的配置文件/conf/httpd.conf
应该有这样两句:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
并且apache/modules下应该有
mod_authz_svn.so
mod_dav_svn.so这两个文件。
如果有so文件而httpd.conf中没有增加相关信息,手动加上即可。
如果没有so文件,是svn安装的问题,需要重新安装svn。

2.创建svn库:
先创建一个svn库存放目录,如 mkdir /app/wzf/svnrepository
然后创建svn库:svnadmin create /app/wzf/svnrepository/kimchi
可以随意提交一个内容:先创建一个文件,如/app/wzf/test
然后提交:svn import /app/wzf/test file:///app/wzf/svnrepository/kimchi/ -m “commit test”

3.配置Apache与svn集成
修改版本库权限:保险起见,我全改成了777
chmod 777 -R /app/wzf/svnrepository
修改Apache配置文件:vi /app/wzf/apache/conf/httpd.conf
修改端口号:

Listen 8090

修改servername:

ServerName localhost:8090

添加:

User wzf
Group develop

在文件最后添加:

<Location /svn>
DAV svn
SVNParentPath /app/wzf/svnrepository
AuthType Basic
AuthName "welcome to svn"
AuthUserFile "/app/wzf/svnrepository/kimchi/conf/passwd"
AuthzSVNAccessFile "/app/wzf/svnrepository/kimchi/conf/authz"
Require valid-user
</Location>

4.启动Apache和svn服务:
cd /app/wzf/apache/bin
./apachectl stop
./apachectl start
ps -ef |grep httpd

/app/wzf/svn/subversion-with-apache/bin/svnserve -d -r /app/wzf/svnrepository

访问:ip:port/svn/kimchi 成功

猜你喜欢

转载自blog.csdn.net/xixiaoxie2/article/details/50156869