在windows上搭建Apache+Trac+Subversion

來源:互聯網
上載者:User

 

以下是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/

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.