zoukankan      html  css  js  c++  java
  • 在windows上搭建Apache+Trac+Subversion

    以下是Trac在Ubuntu环境下的搭建过程

    一.从http://trac.edgewall.org/wiki/TracDownload下载Trac最新版(目前为0.12)
    二.依据http://trac.edgewall.org/wiki/TracInstall的知道一步步安装,以下为详细过程
        2.1.安装必要的库
            2.1.1 检查python是否已经安装
            2.1.2 安装setuptools(后续安装中会用到easy_install命令)
                  Ubuntu下可以很方便的用sudo apt-get install python-setuptools命令来安装

            2.1.3 安装Genshi
                 sudo  easy_install Genshi(Unbutu下可以方便的用,但在window下需要下载python egg安装)
            2.1.4 安装svn
                  包括svn服务以及python的svn实现,注意,双方的大版本必须要一致,比如svn服务的大版本是1.6,则python的相应实现也应该是1.6,否则在Trac中集成时将会出问题,切记!
                  apt-get install subversion
                  apt-get install python-subversion
            2.1.4 安装Apache
                  可以通过sudo apt-get install apache2安装,也可以去Apache网站下载最新版本安装
            2.1.5 安装mod_wsgi(用户也可以根据各自需要安装mod_python,但推荐使用mod_wsgi,因为mod_wsgi更快,而且mod_python已经停止开发,这里需要特别注意的是,不管是安装什么mod,都要特别注意该mod的python版本和要运行的python版本是否一致!!)
                  去http://code.google.com/p/modwsgi/下载mod_wsgi安装
                  也可以通过sudo apt-get install libapache2-mod-wsgi命令安装
            2.2.安装可选库
            2.2.1 安装Babel
                  为支持Localization,实现不同语言的选择,请安装Babel
                  可以通过sudo svn co http://svn.edgewall.org/repos/babel/ /home/download/Babel命令来下载,但要确保svn已安装
                  因为Babel依赖于CLDR,所以再安装之前还需要导入CLDR,根据所下载的Babel安装说明选择合适的CLDR版本下载,下载后执行sudo python ./scripts/import_cldr.py /home/download/common命令导入CLDR(注,/home/download/common为解压后的CLDR路径,需要和实际路径保持一致!)。安装CLDR非常重要,如果选择来安装Babel而没有安装CLDR,则再安装Trac时将出错,导致安装失败。如果不考虑本地化,可以略过这一步,不安装Babel,也就用不着安装CLDR。

                  下载完成后进入下载目录中的trunks目录执行sudo python setup.py install命令安装Babel
            2.2.2 安装Docutils模块,Tra/home/download/common/home/download/commonc wiki中使用
                  在http://docutils.sourceforge.net/下载
                  解压后执行sudo python setup.py install命令安装
            2.2.3 安装Pygments,语法高亮工具
                  在http://bitbucket.org/birkenfeld/pygments-main/downloads下载
                  解压后执行 sudo python setup.py install
            2.2.4 安装pytz,主要是时区处理
                  从http://pypi.python.org/pypi/pytz/#downloads下载pytz(注意选择针对python的版本)
                  执行sudo easy_install pytz-2010l-py2.6.egg 命令安装pytz
        2.3 安装Trac
            可以通过setuptools的easy_install命令来安装,具体命令为easy_install Trac==0.12,也可以通过下载后再安装,具体命令为sudo python seup.py install

        2.4 创建Trac项目运行环境
            执行sudo trac-admin /home/diebold-Trac initenv命令,创建Trac项目,在创建的过程中需要回答一些问题,关于要创建的项目名称,所用的数据库链接字符等等。所填写的内容都将存在该项目的trac.ini配置文件中,用户不用担心在创建过程中出错,所有都可以再trac.ini中进行更改。
            创建完成以后,可以执行tracd --port 8000 /home/diebold-Trac命令来启动Trac独立的web服务。
            打开浏览器,输入http://127.0.0.1:8000,即可浏览Trac。如果进入项目以后,页面提示对某某目录没有读写权限,则用户需要手动去更改该目录的读写权限,具体命令为sudo chmod -R 777 diebold-Trac
        2.5 配置Trac
            2.5.1 生成WSGI配置文件
                  可以很方便的通过tarc-admin diebold-Trac deploy diebold-Trac命令来生成WSGI的相关配置文件。命令成功执行后生成cgi-bin/trac.wsgi文件,/该文件即为wsgi配置文件,后面配置Apache的时候将会用到
            2.5.2 配置Apache
                  打开Apache配置文件httpd.conf(如果不清楚apache具体安装位置,可以执行whereis apache2命令来查找,一般来说配置文件在/etc/apache2中 )
              在httpd.conf中添加以下配置
              WSGIScriptAlias /trac /home/diebold-Trac/cgi-bin/trac.wsgi

              <Directory /home/diebold-Trac>
                  WSGIApplicationGroup %{GLOBAL}
                  Order deny,allow
                   Allow from all
                 </Directory>
             配置完成后应该重启apache,重启命令为sudo /etc/init.d/apache2 restart
             注,apache常用命令为sudo /etc/init.d/apache2 start or  restart or stop
             重启apache后,即可通过http://localhost/trac来浏览Trac
            2.5.3 配置基本权限控制
                  创建htpasswd文件,建议第一个用户使用命令行创建,其他用户可以使用Trac的插件来做
                htpasswd -c htpasswd admin
               按照提示完成创建用户后,给用户赋予admin权限,方便后续操作,具体命令为trac-admin /home/diebold-Trac permission add admin TRAC_ADMIN

            2.5.4 安装Trac插件
                  安装Account Manager Plugin,具体命令为easy_install https://trac-hacks.org/svn/accountmanagerplugin/trunk
              配置Account Manager,用户可以根据实际需要选择使用不同的模块,但需要注意的时,如果使用LoginModule 的话,需要现禁用web_ui,具体方法为,将Trac.ini中的components配置中添加acct_mgr.web_ui.LoginModule = enabled,同时需要设置password store
              [account-manager]
              ; configure the plugin to store passwords in the htpasswd format:
              password_store = HtPasswdStore
              ; with Trac < 0.10 use this instead:
              password_format = htpasswd

              ; the file where user accounts are stored
              ; the webserver will need write permissions to this file
              ; and its parent folder
              password_file = /var/trac/trac.htpasswd
             
              另外,需要在apache的配置中将 Require valid-user配置注释掉,否则运行的时候会出错,切记切记!
              以上步骤完成后重启apache,将会发现登录时使用的页面和之前apache默认的已经不太一样!   
             
              安装Svnauthz File Administration Plugin(管理SVN用户和权限),从http://trac-hacks.org/wiki/SvnAuthzAdminPlugin下载后安装
              安装完成后应该对trac.ini的svn相关选项进行设置,具体为
              authz_file = /home/Repository/D-Cash/conf/authz
              authz_module_name = D-Cash(需要特别注意,这里填写的应该是svnadmin create时创建的repository名字,切记切记,否则使用svnauthadmin管理权限的时候会报出invalidpath,导致执行不成功!)
              配置成功后就可以再Trac的admin页面通过Subversion Access来管理SVN的用户和权限

          2.5.5 配置版本库(Repository)
              先创建Repository, 具体命令为 sudo svnadmin create D-Cash
            通过Trac添加repository后应该执行一下同步命令,具体命令sudo trac-admin /home/diebold-Trac repository resync D-Cash
            最好能在svn的hook中配置一下post-commit,这样以来svn更新的时候就能在Trac的source broswer中看到相应的更新,具体做法为:在post-commit中添加如下命令:sudo /usr/local/bin/trac-admin /home/diebold-Trac  changeset added $REPOS $REV

            启动svnserve命令为svnserve -d -r /home/Repository/

  • 相关阅读:
    解决方案下显示的网站名称被追加编号的问题解决方法
    sql server 2008 报表服务器(sql server 2008 report service)中如何固定行或者列
    如何通过参数来切换图表和数据
    饼图中如何将一定比例的小切片收集在一起
    饼图图例中显示百分比值
    如何根据条件隐藏列
    饼图上如何显示百分比值
    负载均衡
    在UTF8页中接收和使用以GB2312方式进行URL编码的中文数据
    ASP 格式化显示时间为几个月,几天前,几小时前,几分钟前,或几秒前
  • 原文地址:https://www.cnblogs.com/Jerryshome/p/1818603.html
Copyright © 2011-2022 走看看