ubuntu14.04上Trac配置记录

系统环境:ubuntu14.04 (并假设Apache2服务可以正常运行)

1. 安装软件:

sudo aptitude install trac python-mysqldb

2. 创建数据库
Trac可支持的数据库有:sqlite, postgresql及mysql等。默认的是sqlite,但这里选用的是mysql。

$ mysql -uroot -p
  Enter password: ******
  mysql> CREATE DATABASE $myproject DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
  mysql> show databases;
  mysql> exit 

说明:Trac可以管理很多个项目,所以每个项目都需要创建自己的数据库。

3. 创建Trac环境的根目录

sudo mkdir /var/www/trac 

因为Trac是需要与Apache2服务绑定的,所以一般放到/var/www下,当然了用户也可根据喜好随意设置位置。

4. 创建Trac项目

cd /var/www/trac
sudo mkdir test
sudo trac-admin test initenv
  >>projectname: test
  >>conn database: mysql://root:******@localhost/test

说明:数据库名称,项目名称最好都保持一致,免得容易混淆。这里的“Test” 即前面的 $myproject。

然后更改权限:

sudo chown -R www-data:www-data trac
sudo chmod -R g+rsw trac

5. 绑定Apache2服务

编辑配置文件:/etc/apache2/apache2.conf,在文件最后添加如下内容:

<Location "/trac">
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnvParentDir /var/www/trac
    PythonOption TracUriRoot /trac
    AuthType Basic
    AuthName "Trac"
    AuthUserFile /etc/apache2/.svn_and_trac.htpasswd
    Require valid-user
</Location>

认证方式为“Basic”,密码文件位置/etc/apache2/.svn_and_trac.htpasswd

上面配置也可以写成:

<Location "/trac">
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnvParentDir /var/www/trac
    PythonOption TracUriRoot /trac
</Location>
<LocationMatch "/trac/[^/]+/login">
    AuthType Basic
    AuthName "Trac"
    AuthUserFile /etc/apache2/.svn_and_trac.htpasswd
    Require valid-user
</LocationMatch>

跟上面的区别是,第一种配置为强制登录认证,不允许匿名访问;第二种则不强制。

确认以下模块(都在/etc/apache2/mods-enabled目录下)都已经启动起来,可通过以下命令确认:

sudo a2enmod env
sudo a2enmod auth_basic
sudo a2enmod python

6. 创建密码文件

Apache2认证的方式按照级别递增的顺序可分为:Basic, Digest, SSL; 前两种是通过http方式访问的,SSL是通过https,配置稍复杂。

这里使用的Basic认证:

$ htpasswd -c /etc/apache2/.svn_and_trac.htpasswd $username

参数“-c”表示第一次创建密码文件。如果后续需要追加用户,就不可使用参数“-c”了。如果将命令htpasswd替换成命令htdigest,则创建就是Digest认证文件了。

补充说明一下下面的几个命令:
  * a2dismod        ------> disable一个Apache2模块,即从mods-enabled/目录中删除该模块的链接
  * a2dissite        ------> disable一个Apache2配置,即从sites-enabled/目录中删除该配置的链接
  * a2enmod        ------> enable一个Apache2模块,即在mods-enabled/目录中创建一个到mods-available/的模块的链接
  * a2ensite        ------> enable一个Apache2配置,即在sites-enabled/目录中创建一个到sites-available/的配置的链接
说明:在/etc/apache2的配置文件目录下一般有如下目录:
  * mods-available/    ------> 所有已安装的Apache2模块
  * mods-enabled/    ------> 已经被开启正被使用的Apache2模块,都是链接到mods-available/的链接文件
  * sites-available/    ------> 所有可支持的Apache2启动配置文件
  * sites-enabled/    ------> 默认被使用的Apache2启动配置文件,都是链接到sites-available/的链接文件

7. 更改Trac环境的logo
编辑文件trac/$myproject/conf/trac.ini,相应部分更改如下:

[header_logo]
alt = (logo of ucrobotics)
height = -1
link = http://www.ucrobotics.com
src = /themes/garamond/img/header-icon.gif
width = -1

8. 添加管理权限

trac-admin /var/www/trac/test permission add $username TRAC_ADMIN 

对于具有管理权限的用户,在通过浏览器访问Trac环境的时候,其导航栏的最右边会有一个“Admin”的链接,进入之后可以对其它用户的权限进行配置。
一般来说,具有管理权限的用户可以通过Web界面进行管理操作了,但若是需要通过命令行进行操作,可参考:wiki:TracAdmin

9. 重启Apache2服务测试

sudo /etc/init.d/apache2 restart 

测试地址:http://localhost/trac

ubuntu14.04上Trac配置记录

时间: 2024-10-11 16:55:21

ubuntu14.04上Trac配置记录的相关文章

fastdfs及php扩展在ubuntu14.04的安装配置

一:简单介绍     FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线服务,如相册网站.视频网站等等.FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage).跟踪器主要做调度工作,在访问上起负载均衡的作用. FastDFS 是一个 C 语言实现的开源轻量级分布式文件系统,作者余庆(happyfish100),支持 Linux.Fre

ubuntu14.04上搭建android开发环境

这几天心血来潮,想在ubuntu上写写android软件.所以就上网找些资料在ubuntu上搭建android环境,结果要么时不完整的,要么就是过时的.所以我把我搭建android环境的过程写下了,以便以后忘了可以参考参考,也给来看这篇博文的读者一些启迪吧. 搭建android环境有几个步骤: 1.必须得安装java吧 下载链接 java 选择最新的版本吧,将jdk解压到自己要放的文件夹,我的是/var/android/java. 然后配置环境变量: sudo gedit /etc/profil

在Ubuntu14.04上OpenStack Juno安装部署

在Ubuntu14.04上OpenStack Juno安装部署 0 安装方式 0.1 安装方式 安装方式 说明 目标 备注 单结点 一台服务器运行所有的nova-xxx组件,同时也驱动虚拟实例. 这种配置只为尝试Nova,或者为了开发目的进行安装.   1控制节点+N个计算节点 一个控制结点运行除nova-compute外的所有nova-services,然后其他compute结点运行nova-compute.所有的计算节点需要和控制节点进行镜像交互,网络交互,控制节点是整个架构的瓶颈. 这种配

在Ubuntu14.04上快速部署OpenStack

对于初学者来说,OpenStack手工部署相当麻烦, 而且需要花较多时间学习.不过我们可以使用部署脚本来安装OpenStack. 网上有一款名叫DevStack的号称最傻瓜的OpenStack部署工具.用了一下觉得的确挺傻瓜的.组件是从github上面直接拉下来,不仅慢不说,连版本兼容都有可能出问题.安装就用了4个小时.想要更改参数更是只能重来.更可恶的是它会使用python setup脚本把一些可能过期的包直接添加到系统的python库里,引发一大堆错误.基本上用DevStack安装失败了可以

【转】Linux(ubuntu14.04)上编译Android4.4源码的环境搭建及编译全过程

原文网址:http://jileniao.net/linux-android-building.html sublime text让我伤心.本来很信任sublime text的自动保存功能,之前使用一直很给力的,但这次让我伤心欲绝啊. 关于Linux(ubuntu14.04)上编译Android源码的环境搭建详细过程都是在sublime text中编辑好的,无奈,这次的数据丢失让我不得不重新来回想手打一次了.可能很多细节问题,这次重新编辑文章时不会记得那么清晰了,还请有问题的朋友在下面留言给我就

菜鸟玩云计算之十六:Ubuntu14.04上创建的虚拟机迁移到RHEL6.4

菜鸟玩云计算之十六:Ubuntu14.04上创建的RHEL6.4虚拟机迁移到RHEL6.4主机上 Ubuntu14.04上的 qemu比RHEL6.4上的版本要新,导致在Ubuntu14.04创建的Guest(RHEL6.4)虚拟机复制到RHEL6.4HOST主机上不能运行.为解决这个问题,可以按下面的步骤: 1)在Ubuntu14.04上把qcow2格式的vm转成raw格式的. 2)在RHEL6.4上define raw格式的vm. 既然RHEL6.4支持raw格式的vm,那么可以在Ubunt

Ubuntu14.04上安装pip的方法

在Ubuntu14.04上,通过sudo apt-get install python-pip下载的pip版本有些老,在使用时很可能出现下面的问题 [email protected]:~# pip Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> load_entry_point('pip==1.5.4', 'console_scripts', 'pip')() File

ubuntu14.04上引入thinkphp5类库遇到的一个问题

ubuntu14.04 上加载OSS\OssClient() ;--->在vendor文件夹下的文件要用大写OSS 小写的报错 无法加载类库 Vendor('OSS.autoload');//引入文件 $accessKeyId = ""; $accessKeySecret = ""; $endpoint = ""; try { $ossClient = new \OSS\OssClient($accessKeyId, $accessKeyS

在ubuntu14.04上重新安装matlab2014a,挂载到home目录下面

以前在ubuntu14.04上安装过matlab2014a,但是由于使用的方法是网络上常见的挂载到根目录下,因此用了不久,根目录就开始报出根目录不足的消息:因此为了避免重新安装ubuntu14.04,我选择卸载了matlab2014a的方法(这里可以使用命令行也可以使用software center来卸载).此次,我是将matalb2014a安装在我的home目录下面,详细步骤参见如下: 1.下载iso镜像文件,这个可以网上搜索,同时自己也应该备份. 2.然后参照前面的博客步骤进行挂载,但是这里