歡迎您光臨本站 註冊首頁

trac和nginx安裝部署指南

←手機掃碼閱讀     火星人 @ 2014-03-03 , reply:0

trac和nginx安裝部署指南


trac和nginx安裝部署指南



目錄

1.      引言... 4

1.1        參考資料... 4

2.      系統介紹... 4

2.1        系統概述... 4

2.2        運行硬體環境... 4

2.2.1         應用伺服器... 4

2.2.2         資料庫伺服器... 4

3.      安裝說明... 5

3.1        安裝前準備... 5

3.1.1         操作系統... 5

3.2        軟體安裝... 6

3.2.1         步驟圖示... 6

3.2.2         Babel庫... 6

3.2.3         Genshi庫... 6

3.2.4         trac. 6

3.2.5         trac插件... 6

4.      系統首次運行... 7

4.1        初始化一個trac項目... 7

4.2        修改trac配置文件... 7

4.3        配置trac的管理員... 8

4.3.1         創建管理員的帳號密碼... 8

4.3.2         賦予管理員對這個trac項目的管理許可權... 8

4.4        啟動tracd進程(使用trac自有的LoginModule認證)... 8

4.5        配置nginx使用fcgi(使用trac自有的LoginModule認證)... 8

4.6        啟動nginx服務... 9

4.7        配置trac使用AccountManagerPlugin做用戶認證... 9

4.8        啟動tracd進程(使用TracAccountManager插件認證)... 10

4.9        配置nginx使用fcgi(使用TracAccountManager插件認證)... 10

4.10          重啟nginx服務... 11

5.      系統啟動和停止... 11

5.1        系統啟動... 11

5.2        系統停止... 11






1.   引言

1.1    參考資料

http://blog.csdn.net/lanphaday/article/details/6609256

http://guoh.org/lifelog/2011/04/some-tips-on-trac-installation/

2.  系統介紹

2.1    系統概述

Trac是一個基於Web的,輕量級的項目管理工具,它使用python語言編寫,官網:http://trac.edgewall.org/。它集成了增強的Wiki功能和版本控制功能,並可通過插件擴展其功能。



系統採用CentOS 5 + nginx + sqlite3 + trac的方案,trac和nginx都使用fastcgi的模式運行。

2.2   運行硬體環境

2.2.1  應用伺服器

IP:192.168.0.1

2.2.2  資料庫伺服器

IP:192.168.0.1

目前使用的是sqlite3,資料庫文件路徑:/home/huzhenwei/trac/db/trac.db

如果隨著數據量增加,服務性能下降,可以考慮將數據遷移到MySQl或ProgreSQL資料庫。



3.  安裝說明

3.1   安裝前準備

3.1.1  操作系統

操作系統版本為CentOSrelease 5.7 (Final)

3.1.1.1  用戶

用戶名:huzhenwei

3.1.1.2  Python環境

Python-2.7.2

使用普通用戶(huzhenwei)安裝virtualenv庫, shell命令如下:

    wget "http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.7.tar.gz#md5=dcc105e5a3907a9dcaa978f813a4f526"  -O virtualenv-1.7.tar.gz

   tar virtualenv-1.7.tar.gz

   tar -zxf virtualenv-1.7.tar.gz

   cd virtualenv-1.7

   python setup.py install

   cd ~

   virtualenv trac_virtual_env

3.1.1.3  Web伺服器

nginx-1.0.11

nginx的編譯選項:

./configure--prefix=/home/huzhenwei/nginx --with-http_ssl_module--without-http_rewrite_module

3.2   軟體安裝

3.2.1  步驟圖示



3.2.2  Babel庫

如果需要trac支持多語言環境,需要先安裝這個庫。安裝的shell命令如下:

/home/huzhenwei/trac_virtual_env/bin/easy_installBabel



3.2.3   Genshi庫

Genshi是trac所使用的網頁模板庫,安裝的shell命令如下:

/home/huzhenwei/trac_virtual_env/bin/easy_installGenshi



3.2.4   trac

/home/huzhenwei/trac_virtual_env/bin/easy_installtrac



3.2.5  trac插件

trac插件可以在這個網站查找:http://trac-hacks.org/



本系統目前應用的插件如下:




插件名


安裝方式




AccountManagerPlugin


easy_install https://trac-hacks.org/svn/accountmanagerplugin/trunk




TracWysiwygPlugin


easy_install http://trac-hacks.org/svn/tracwysiwygplugin/0.12




註:插件安裝完成後,需要重啟trac,才能在trac的插件管理頁面中列出新安裝的插件。



4.  系統首次運行

4.1   初始化一個trac項目

cd ~

./trac_virtual_env/bin/trac-admin/home/huzhenwei/trac initenv



4.2   修改trac配置文件

trac的配置文件的路徑:/home/huzhenwei/trac/conf

需要修改如下幾項:



default_charset= utf-8

default_language= zh_CN

default_timezone=



4.3   配置trac的管理員

4.3.1  創建管理員的帳號密碼

如果操作系統上沒有htpasswd程序,可以使用trac源代碼包中的替代程序來創建用戶,如下:

cdTrac-0.12.2/contrib/

pythonhtpasswd.py -c -b /home/huzhenwei/trac/user.htpasswd admin admin



4.3.2  賦予管理員對這個trac項目的管理許可權

../trac_virtual_env/bin/trac-admin~/trac permission add admin TRAC_ADMIN

4.4   啟動tracd進程(使用trac自有的LoginModule認證)

home/huzhenwei/trac_virtual_env/bin/tracd--basic-auth==trac,/home/huzhenwei/trac/user.htpasswd,trac -s --port 8000--protocol=fcgi -d /home/huzhenwei/trac

4.5   配置nginx使用fcgi(使用trac自有的LoginModule認證)

vi nginx/conf/nginx.conf, 將http下的這一段修改為如下:

   server {

        listen       8090;

        server_name  localhost;



        #charset koi8-r;



        #access_log  logs/host.access.log  main;



        location / {

            #root   html;

            #index  index.html index.htm;

            fastcgi_pass 127.0.0.1:8000;

            auth_basic "trac Realm";

            auth_basic_user_file/home/huzhenwei/trac/user.htpasswd;



            fastcgi_param AUTH_USER$remote_user;

            fastcgi_param REMOTE_USER$remote_user;



            fastcgi_param PATH_INFO$fastcgi_script_name;

            fastcgi_param REQUEST_METHOD$request_method;

            fastcgi_param QUERY_STRING$query_string;

            fastcgi_param CONTENT_TYPE$content_type;

            fastcgi_param CONTENT_LENGTH$content_length;

            fastcgi_param SERVER_PROTOCOL$server_protocol;

            fastcgi_param SERVER_PORT$server_port;

            fastcgi_param SERVER_NAME$server_name;

            fastcgi_pass_header Authorization;

            fastcgi_intercept_errors off;



        }

4.6   啟動nginx服務

/home/huzhenwei/nginx/sbin/nginx



4.7   配置trac使用AccountManagerPlugin做用戶認證

AccountManagerPlugin有用戶管理和身份認證功能,可以取代trac自有的LoginModule認證。



在trac的插件管理中,先啟用TracAccountManager插件,然後將trac下的LoginModule取消勾選



4.8   啟動tracd進程(使用TracAccountManager插件認證)

kill先前啟動的tracd進程,然後運行:

/home/huzhenwei/trac_virtual_env/bin/tracd-s --port 8000 --protocol=fcgi -d /home/huzhenwei/trac

4.9   配置nginx使用fcgi(使用TracAccountManager插件認證)

vi nginx/conf/nginx.conf, 將http下的這一段修改為如下:

    server {

        listen       8090;

        server_name  localhost;



        #charset koi8-r;



        #access_log  logs/host.access.log  main;



        location / {

            #root   html;

            #index  index.html index.htm;

            fastcgi_pass 127.0.0.1:8000;

            #auth_basic "trac Realm";

            #auth_basic_user_file/home/huzhenwei/trac/user.htpasswd;



            #fastcgi_param AUTH_USER$remote_user;

            #fastcgi_param REMOTE_USER$remote_user;



            fastcgi_param PATH_INFO$fastcgi_script_name;

            fastcgi_param REQUEST_METHOD$request_method;

            fastcgi_param QUERY_STRING$query_string;

            fastcgi_param CONTENT_TYPE$content_type;

            fastcgi_param CONTENT_LENGTH$content_length;

            fastcgi_param SERVER_PROTOCOL$server_protocol;

            fastcgi_param SERVER_PORT$server_port;

            fastcgi_param SERVER_NAME$server_name;

            fastcgi_pass_header Authorization;

            fastcgi_intercept_errors off;



        }



4.10      重啟nginx服務

/home/huzhenwei/nginx/sbin/nginx-s reload

5.  系統啟動和停止

5.1   系統啟動

/home/huzhenwei/trac_virtual_env/bin/tracd-s --port 8000 --protocol=fcgi -d /home/huzhenwei/trac

/home/huzhenwei/nginx/sbin/nginx



5.2   系統停止

kill tracd和nginx進程的pid
《解決方案》

謝謝分享

[火星人 ] trac和nginx安裝部署指南已經有744次圍觀

http://coctec.com/docs/service/show-post-1199.html