- 论坛徽章:
- 0
|
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
需要修改如下几项:
[trac]
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
|
|