您的位置:首页 > 运维架构 > Apache

linux下apache+svn+viewvc 源码安装过程

2011-08-03 17:30 393 查看
apache安装:

下载 httpd-2.2.19.tar.gz 解压

./configure --prefix=/usr/local/apache2/ --enable-dav --enable-so --enable-dav --enable-dav-fs --enable-dav-lock

make

make install

启动,重启和停止

/usr/local/apache/bin/apachectl -k start

/usr/local/apache/bin/apachectl -k restart

/usr/local/apache/bin/apachectl -k stop

apache配置:

vi /usr/local/apache/conf/httpd.conf

修改以下配置(当然这些修改是最基本的修改,如果要更高级的,参照其他apache配置手册)

找到:

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

在后面添加:

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

找到:

<IfModule dir_module>

DirectoryIndex index.html

</IfModule>

添加:

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

找到:

#ServerName www.example.com:80

修改为:

ServerName 127.0.0.1:80或者ServerName localhost:80

记得要去掉前面的"#"

否则会出现以下错误提示:

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

apache测试

在浏览器里输入http://127.0.0.1

如果出现It Works!说明成功。

subversion安装:

检查swig python等是否安装

下载 subversion-1.6.1.tar.gz 解压

./configure --enable-maintainer-mode --with-apxs=/usr/local/apache/bin/apxs --with-ssl --with-swig=/usr/local/bin/swig --with-python=/usr/bin/python

make

make install

make install-swig-py

测试安装是否成功:

#svnserve -version 回车显示版本说明安装成功

subversion配置:

·建立版本库

#mkdir /var/svn 创建svn数据目录

#svnadmin create /var/svn/repository kuming 就是版本库的名字,可以改变!

·修改版本库配置,回车后会在库目录下生成配置文件

#vim /var/svn/repository/conf/svnserve.conf 主配文件

[general]

anon-access = none

auth-access = write

password-db = passwd

authz-db = authz

#realm = kuming

#vim /var/svn/repository/conf/passwd 用户配置文件

[users]

user1 = password1

user2 = password2

#vim /var/svn/repository/conf/authz 权限配置文件

[groups] 设置组

group1 = user1

[/] 根目录权限设置(就是"kuming"这个文件夹)

user1 = rw 用户1权限是:可读写

user2 = r 用户2权限是:可读,不可写

@group1 = rw 设置组权限

[kuming:/123] 设置根目录下"123"文件夹的权限

启动svn服务器

#svnserve -d -r /var/svn

-d表示以daemon方式(后台运行)运行

-r /var/svn指定根目录是/var/svn

#ps aux | grep svnserve 查看服务,端口:3690

客户端使用的软件是TortoiseSVN

浏览方法:

打开版本库浏览器输入:svn://ip-addr/repository

apache中的subversion配置:

编辑 vi /usr/local/apache/conf/httpd.conf

添加:

LoadModule dav_svn_module modules/mod_dav_svn.so

注意,如果mod_dav是作为共享对象编译(而不是静态链接到httpd程序),你需要为它使用使用LoadModule语句,一定确定它在mod_dav_svn之前,即:

LoadModule dav_module modules/mod_dav.so

LoadModule dav_svn_module modules/mod_dav_svn.so

最后添加目录映射

<Location /svn>

DAV svn

SVNPath /var/svn/repository

</Location>

访问http://ip/svn 即能看到svn的内容

添加访问权限, 将Location改为:

<Location /svn>

DAV svn

SVNPath /var/svn/repository

AuthType Basic

AuthName "Subversion repository"

AuthUserFile /var/svn/svn-passwd

Require valid-user

</Location>

接下来,您需要创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息。要添加用户,您可以执行下面的命令:

htpasswd -c /etc/subversion/passwd username

它会提示您输入密码,当您输入了密码,该用户就建立了。"-c"选项表示创建新的/etc/subversion/passwd文件,所以user_name所指的用户将是文件中唯一的用户。如果要添加其他用户,则去掉"-c"选项即可:

htpasswd /etc/subversion/passwd other_user_name

重启apache

访问http://ip/svn 输入用户名密码 登陆即可

详细的设置可参考:http://www.blogjava.net/yongbing/archive/2007/03/06/102276.html

viewvc安装:

下载wget http://viewvc.tigris.org/files/documents/3330/48879/viewvc-1.1.10.tar.gz
tar -zxvf viewvc-1.1.10.tar.gz

cd viewvc-1.1.10

./viewvc-install

直接 Enter

cd /usr/local/

ln -s viewvc-1.1.10 viewvc

viewvc配置:

vi /usr/local/viewvc/viewvc.conf

修改如下:

[general]

#cvs_roots = cvs: /home/cvsroot

svn_roots = repository: /var/svn/repository

root_parents = /var/svn : svn

default_root = svn

Apache中ViewVC配置,

cp /usr/local/viewvc/bin/cgi/viewvc.cgi /usr/local/apache/cgi-bin/viewvc.cgi

在 /usr/local/apache/conf/httpd.conf 最后添加:

ScriptAlias /viewvc /usr/local/apache/cgi-bin//viewvc.cgi

<Location /viewvc>

AllowOverride None

AuthUserFile /var/svn/svn-passwd

AuthName "ViewVC Client Access"

AuthType Basic

require valid-user

</Location>

重启apache

访问http://ip/viewvc 输入用户名密码 登陆即可

错误提示:

An Exception Has Occurred

Python Traceback

Traceback (most recent call last):

File "/var/lib/python-support/python2.4/viewcvs.py", line 3235, in main

request.run_viewcvs()

File "/var/lib/python-support/python2.4/viewcvs.py", line 268, in run_viewcvs

import vclib.svn

File "/var/lib/python-support/python2.4/vclib/svn/__init__.py", line 27, in ?

from svn import fs, repos, core, delta

ImportError: No module named svn

错误原因是python中没有subversion模块造成的 检查/usr/local/lib/svn-python是否安装 否则重新编译subversion

如已安装

echo /usr/local/lib/svn-python > /usr/local/lib/python2.5/site-packages/subversion.pth

并 cp /usr/local/lib/libsvn* /usr/lib/

重启apache

访问http://ip/viewvc 输入用户名密码 登陆即可

可参考:http://svn.apache.org/repos/asf/subversion/trunk/subversion/bindings/swig/INSTALL

参考:

http://hi.baidu.com/fuying163/blog/item/4b5d5facca65f4eefbed5086.html

http://blogold.chinaunix.net/u/30699/showart_349297.html

http://www.ichiayi.com/wiki/tech/viewvc

http://www.360doc.com/content/06/0809/23/1523_177637.shtml

http://www.gossamer-threads.com/lists/trac/users/20280
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: