Categories
技术讨论

Trac与Apache集成时的身份验证

前面进行了Trac与Apache的集成,但是还留了一个尾巴,那就是用户身份的验证和授权管理。

1. 身份验证

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

  • 创建密码文件
    F:\apache\bin>htpasswd -cp F:\apache\conf\trac.passwd test
    New password: ****
    Re-type new password: ****
    Adding password for user test
    在这里使用了-p参数,是以明文的方式保存密码。win平台下默认是MD5加密,但是在配置Trac的时候总提示密码文件格式不对,有谁知道如何解决,请指教。
  • 配置身份验证
    <Location “/trac/login”> #设置Trac用户验证
    AuthType Basic
    AuthName “Trac”
    AuthUserFile F:\apache\conf\trac.passwd
    Require valid-user
    </Location>

2. Trac的授权设置

Categories
技术讨论

集成Subversion(SVN)与Apache 2.0.x

前面的blog主要介绍了Trac以及Trac与Apache的集成,下面补充说明一下Subversion与Apache的集成。

1. 下载并安装程序

  • Apache-2.0.59,在目前win32平台下,建议暂时不要选择Apache2.2.x,因为包括SVN在内,很多Module都还没有支持Apache2.2的版本
  • svn-1.4.3,执行安装程序会自动的配置apache的配置文件httpd.conf。如果没有自动配置成功,需参考后面说明手动配置。
  • TortoiseSVN,这是一个可选软件,和本主题没有关系。但是如果在win32平台下开发,还是非常推荐使用这个SVN扩展。

2. 配置httpd.conf

  • 将Subverion安装目录下的mod_dav_svn.so和mod_authz_svn.so复制到Apache的modules目录
  • 打开httpd.conf,增加如下两行:
    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.so
  • 注意,由于dav_svn需要dav_module的支持,所以要确保下面这一行没有被注释,并且保证在dav_svn之前加载:
    LoadModule dav_module modules/mod_dav.so

3. 设置SVN的目录

Categories
技术讨论

Trac与Apache的集成(ModPython)

在”Trac+SVN的安装与配置(tracd模式)“中介绍了以tracd方式的trac服务器的安装与配置,今天来研究一下Trac通过ModPython来与Apache的集成。

与tracd的方式相比,和Apache的集成有很多优点,比如充分利用apache的强大功能以及ModPython的高效率,便于管理与控制,很方便支持ssl等等。

1. 下载并安装程序

  • 假设已经按照”Trac+SVN的安装与配置(tracd模式)“中的说明安装好了Trac。如果没有请参考安装
  • Apache-2.0.59:如果选择2.2,注意下面的ModPython的版本要对应
  • ModPython-3.3.1:这里注意选择与apache和python对应的版本,安装过程中会要求选择apache的安装目录,并且自动把mod_python.so复制到modules目录

2. 配置

  • 配置ModPython
    在apache的httpd.conf中加入下面一行:
    LoadModule python_module modules/mod_python.so
  • 配置trac
    在apache的httpd.conf中加入下面内容:
    <Location /trac>
    SetHandler mod_python
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnv F:\trac\proj1
    PythonOption TracUriRoot /trac
    </Location>
  • 然后就通过http://localhost/trac来访问

3. 下一步工作

  • 配置Authentication

参考资料:

Categories
技术讨论

Trac+SVN的安装与配置(tracd模式)

Trac最大的优点是其与wiki的集成,并且非常方便地与svn进行集成,而且是用python开发的,非常令人兴奋。

如果是在windows下安装的话,python的版本最好选择2.4。有一些模块于python25并不兼容。如果是在linux下安装,则可以安装最新的版本。

安装与配置都非常简单,下载完程序并依次安装完成就基本上可以了,具体如下:

1. 下载程序并安装程序(首先安装python,其余随便)

2. 配置Trac(假设python安装在c:\python,trac建立在F:\trac\proj1)

  • 初始化trac环境:
    c:\python\scripts> ..\python.exe trac-admin f:\trac\proj1 initenv
    根据提示,输入工程名称,数据库,svn版本库等信息,根据需要输入
  • 启动tracd
    c:\python\scripts>..\python.exe tracd –port 8000 f:\trac\proj1
    补充:如果是需要同时开发多个工程,可以这样:
    c:\python\scripts>..\python.exe tracd –port 8000 f:\trac\proj1 f:\trac\proj2
    或者启动一个目录下的所有工程:
    c:\python\scripts>..\python.exe tracd –port 8000 -e f:\trac\
  • 这样就可以通过http://localhost:8000/来访问trac系统了。
  • 另外,和大部分程序类似,trac的配置文件为安装目录下conf\trac.ini,可以自行修改各项参数。

参考资料:

下一步的工作:

  • 与apache的集成
  • 权限管理
  • trac的模块与插件