Friday, November 10, 2006

[UBUNTU]在ubuntu下安装trac。

首先得说trac官方网站上的安装帮助文档真是比较烂,写得稀里糊涂,如果完全按照它的文档来做肯定会抓狂,主要就是它的安装步骤次序有问题,应该先执行的居然被放到了后面。无论怎么说,最后我还是安装成功了,不过主要还得归功于ubuntu的方便,敲了几个命令,ubuntu就帮我安装好了。
1. 安装软件包
sudo apt-get install trac libapache2-svn
** 可以看的出来,一个是trac的包,一个是apache连接subversion的mod。
** 自动安装之后,至少可以找到两个应用程序/usr/bin/trac-admin /usr/bin/tracd(以standalone的方式运行trac),其他的文件可以在/usr/share/trac下找到。

2. 初始化trac环境(这里定义为/var/trac/TestEnv)
sudo mkdir /var/trac
sudo chown www-data:www-data /var/trac
** 这里使用www-data是因为apache启动之后,会设置自己的进程owner为www-data。
sudo trac-admin /var/trac/TestEnv initenv
- input the project name
- adopt the default database connection, as SqlLite is a embeded database,it has been installed.
- specify the absolute path of svn repository.
- adopt the template directory.
** 执行命令之后,可以进入/var/trac/TestEnv看到已经创建了很多文件。

3. 设置apache2
在/etc/apache2/sites-available下创建一个trac文件来定义apache的VirtualHost:

ServerAdmin webmaster@localhost
ServerName trac.hengpeng.com
DocumentRoot /usr/share/trac/cgi-bin/

Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
allow from all

Alias /trac "/usr/share/trac/htdocs"


SetEnv TRAC_ENV "/var/trac/TestEnv"


DirectoryIndex trac.cgi
ErrorLog /var/log/apache2/error.trac.log
CustomLog /var/log/apache2/access.trac.log combined

同时,还需要修改/etc/apache2/apache2.conf,注释掉addHandler行使trac的CGI程序能够被执行:
# To use CGI scripts outside /cgi-bin/:
#
AddHandler cgi-script .cgi
现在,disable默认的virtualhost,同时激活trac的虚拟主机:
sudo a2ensite trac
sudo /etc/init.d/apache2 reload

4. 创建subversion的环境(好像必须新建一个仓库,使用已有的仓库在执行trac-admin命令的时候就会报错,未确认)
我将新仓库放在/var/trac/TestTrac下面:
sudo svnadmin create /var/trac/TestTrac
sudo svn import /tmp/myproject file:///var/trac/TestTrac -m "initial import"

5. 启动服务
sudo chown -R www-data /var/trac/
sudo chown -R www-data /usr/share/trac

sudo apache2 -k restart

打开浏览器,访问http://trac.hengpeng.com(当然如果你没有域名,那么需要在本地设置域名解析,一般是在hosts文件加就可以了)。

No comments: