windows下Apache+SVN+Trac安装及配置(二)

在Trac的官网上有有一篇安装指南,针对Trac0.11版本的。上面可以看到这时0.11的正式版还没有发布,我安装的是0.11b1版的。 http://trac.edgewall.org/wiki/TracInstall#TracInstallationGuidefor0.11 一、Trac简介
Trac是一个轻量级的项目管理工具,是一个基于web的应用程序。Trac是用Python语言开发的,需要数据库( SQLite, PostgreSQL, MySQL 等).的支持才能运行。对于HTML渲染,在Trac 0.11版本之前用的是 ClearSilver,以后推荐用的是 Genshi

二、安装必备的软件
注意软件的版本及安装的顺序
1.安装 Python,下载:python-2.5msi,默认安装
2.安装 Genshi模板系统,属于页面表示层,下载Genshi-0.4.4.win32.exe,安装时会识别Python安装目录。
3.安装Subversion Python Bindings :svn-python-1.4.6.win32-py2.5.exe,安装时会识别Python安装目录。
4.安装 PySQLite, 下载pysqlite-2.4.0.win32-py2.5.exe, 安装时会识别Python安装目录。PySQLite是SQLite和Python 绑定的轻量级数据库引擎,它是Trac默认的数据库。

三、安装Trac(0.11dev)
由于我用的都是最新版本的软件,安装Trac时浪费了很多时间,后来还是看官网上的文章才搞定。
1.最好添加python的环境变量(C:\Python25)到path中
2.确保先安装 setuptools ,安装步骤如下:在主页中将 ez_setup.py文件下载保存下来(如放在c:\src下面),命令行进入该目录执行python ez_setup.py即可安装和python版本对应的setuptools。
3.check出Trac版本库,再安装,完整的执行语句如下:
 
 
> cd C:\src
> python ez_setup.py
> svn checkout http://svn.edgewall.org/repos/trac/trunk
> cd trunk
> python setup.py ins
四、配置Trac环境
完成上述的安装后,就可以创建一个 TracEnvironment,它是Trac存储信息的地方,如 wiki pages, tickets, reports, settings, 等。
1. 通过 trac-admin创建一个Trac Environment
            我的做法是先在d盘新建一个trac目录,然后执行:> trac-admin d:/trac/mytest initenv
然后根据提示输入项目的名字(myproject),数据库连接字符串(默认),你的源代码资源库路径。
2.在8080端口上单项目运行
> cd C:\Python25\Scripts
> tracd -p 8080 d:/trac/mytest
当看到 Serving on 0.0.0.0:8080 view at http://127.0.0.1:8080/ 时,就表示服务器启动成功了,可以打开浏览器,
看到如下效果图:
五、Apache+SVN与Trac集成
上面的配置是运行在一个独立的服务器上,只能运行一个项目,一般只用于自己单机访问。考虑到我们前面安装的SVN是运
行在Apache服务器上,我们最好也让Trac运行在Apache服务器上,便于网上共享;而且和Apache集成有很多优点,
比如充分利用
apache的强大功能以及ModPython的高效率,便于管理与控制,很方便支持ssl等等。在官方网站上提供的安装指南上面提供了三
种方法
CGI, FastCGI and mod_python.为了提高性能,推荐使用后面两种,我安装时采用第三种。

1、在http://www.modpython.org/ 页面下载相应的安装程序,注意版本对应。我下载的是
mod_python-3.3.1.win32-py2.5-Apache2.2.exe,然后安装,
安装过程中会要求选择apache的安装目录,并且自动把
mod_python.so复制到modules目录 。完成后还要进行配置,类似于SVN和apache的集成,我主要参考的是官方文档。

2、配置

  • 配置ModPython
    在apache的httpd.conf中加入下面一行:
    LoadModule python_module modules/mod_python.so
  • 配置trac
    在apache的httpd.conf中加入下面内容:
    #setup trac on mod_python
    <location>/trac/mytest>
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnv d:/trac/mytest #根据个人安装情况修改
    PythonOption TracUriRoot /trac/mytest
    </location>
  • 然后就通过http://localhost/trac/myjava来访问,点击“浏览源代码”就可以看到svn库中项目资源。
3、配置用户身份的验证

Trac可以使用Apache的身份验证。

  • 创建密码文件,如为myjava创建密码文件,javatrac为用户名:
    转到%Apache%\bin>htpasswd -c d:/trac/mytest/conf/trac.passwd javatrac
    New password: ****
    Re-type new password: ****
    Adding password for user zhengjian
    若对密码不想加密可使用-cp参数,win平台下默认是MD5加密。

  • 配置身份验证 #设置myjava的Trac用户验证
    <location>/trac/mytest/login>
    AuthType Basic
    AuthName myjavatrac
    AuthUserFile d:/trac/mytest/conf/trac.passwd
    Require valid-user
    </location>
完成后重启Apache服务器,然后浏览 http://localhost:8080/trac/mytest ,点击Login,将看到如下效果图:
4、Trac的授权设置
在Trac 0.11以前的版本需要安装WebAdmin插件才能以web的方式管理用户及授权,以后的版本就不在需要了,已经集成了。前面创建的Apache的身份验证,都不具有TRAC_ADMIN权限,下面我们
新创建一个admin用户,然后授予TRAC_ADMIN权限:
#创建一个admin用户
命令行转到%Apache%\bin>htpasswd -c d:/trac/mytest/conf/trac.passwd admin
New password: *****
Re-type new password: *****
Adding password for user admin

#为admin用户授权TRAC_ADMIN
>cd c:/python25/Scripts
>trac-admin d:/trac/mytest permission add admin TRAC_ADMIN #该命令执行时有异常,但不影响授权,我也不知道是哪里的问题
完成后再以admin帐号Login,在search的后面就会看到Admin,点击进入可以看到如下效果图:
至此,Apache+SVN+Trac的集成到此完毕了,由于我用都是目前最近的版本,花费了我将近3天的时间,虽然界面都还是英文的,不过总算运行起来了,下面要做的就是仔细看看如何更好的利用了。我是第
一次用这个管理跟踪项目,欢迎大家相互探讨。

参考:
http://trac.edgewall.org/wiki/TracInstall#Short-Installareleasedversion
http://blog.chinaunix.net/u/30647/showart_240570.html
http://www.hamo.cn/archives/397.html
http://www.yi-dao.com/wiki/ow.asp?Trac

猜你喜欢

转载自luchar.iteye.com/blog/151051