Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Linux下Bugzilla安装与配置

Posted on 2010-10-09 13:23 Prayer 阅读(4435) 评论(0)  编辑 收藏 引用 所属分类: TOOLS

Bugzilla的安装配置,其实也没有传说中的那么困难,问题就在没有经验.刚刚完成bugzilla的配置,我想记录下来我的细致安装过程,一是留点记录进一步回忆理解,二是供朋友们参考. 好了言归正传!

(以下所列皆为本人安装配置过程中的所用资源,不同版本的文件,系统等参照本文安装不保证一定成功)

OS: Linux Red Hat Enterprise 5 (确保gcc编译器等都已安装上去,手工安装gcc比较麻烦)

DB: MySQL-server-community-5.0.67-0.rhel5.i386.rpm, MySQL-client-community-5.0.67-0.rhel5.i386.rpm, MySQL-devel-community-5.0.67-0.rhel5.i386.rpm, MySQL-share-compat-5.0.67-0.rhel5.i386.rpm, MySQL-share-community-5.0.67-0.rhel5.i386.rpm. (http://www.mysql.org)

Apache: httpd-2.2.3-6.el5 (http://www.apache.org)

Bugzilla: Bugzilla-3.2rc2(目前是最新的稳定版本, http://www.bugzilla.org)

开始安装:

前提Linux平台都已搭建完备,本文以此为基础,Linux安装不做赘述.

安装配置mysql

1.安装mysql,顺序:MySQL-server***.rpm, MySQL-client***.rpm, MySQL-share-community***.rpm, MySQL-devel***.rpm, MySQL-share-compat***.rpm.

2.初始化数据库: 输入如下命令为root添加密码, (真该死这个破blog不能方便贴图)!

输入:/usr/bin/mysqladmin -u root password '你的密码',如你使用123456做为密码,则输入:/usr/bin/mysqladmin -u root password 123456 即可.

3.创建bugs用户,并分配权限.(注:bugzilla-2.18rc1版本后已经不需要用户本人创建bugs数据库了,用户只需创建bugs用户即可)

进入mysql(输入命令:mysql -uroot -p, 回车后根据提示输入刚才你初始化的密码), 登入mysql后查看现有数据库情况,输入命令如下,

mysql>show databases;(别忘了这里的分号,该命令将显示所有database,初始默认有: information_schema, mysql, test)

输入如下创建bugs用户并分配权限:

mysql>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, DROP, REFERENCES ON bugs.* TO bugs@localhost INDENTIFIED BY '$db_pass';

mysql>FLUSH PRIVILEGES;

注: '$db_pass'为bugs用户的密码,随你设定,但一定要紧记此密码,下面将会用到. 本人设为bugs,即输入 GRANT ... BY 'bugs';

至此数据库方面配置完毕!


配置apache

关于apache的进修资料进apache官网:http://www.apache.org,查找进修,这里不做引见.

最新版本的apache需要修改的地方不多,主要有3个地方要注意:(修改配置文件httpd.conf即可,该文件一般具有你安装路径的/conf/下,若使用Linux系统自带的apache,则可到/etc/httpd/conf/查找, vi编辑保存)

a.DocumentRoot,需要设置为你的bugzilla文件所在路径,以及<Diretory "你的bugzilla文件所在路径">

b.使用"./"找到AddHandler.cgi这行内容,去掉注释,如果已经去掉,保留即可.如果不添加该语句,会把cgi文件中的内容当成文本形式显示出来,而不是运行cgi程序.

c.创建一个目录的权限说明, 一般如下所示:本例中bugzilla所在路径为:/var/www/html/bugzilla
来源:www.va1314.com/bc

<Directory "/var/www/html/bugzilla">

Options ExecCGI FollowSymLinks

AllowOverride Limit

Order allow,deny

Allow from all

</Directory>

主要修改的内容是, 在Options中增加ExecCGI,该选项让该目录下的CGI脚天性够运行. 其次把AllowOverride的参数改为Limit, 这样修改能够让bugzilla通过生成.htaccess文件来控制目录的访问权限.

至此apache配置完毕!记得apache配置完毕后,要重启啊,这样你的配置才会生效!

配置bugzilla

bugzilla的运行还需要perl的一些模块的支持, 在这提供一个网站www.cpan.org, 该网站提供了perl所有的模块, 用户能够在这search所需的perl模块.好了,下面开始!

cd 到你bugzilla所在的目录, 如:cd /var/www/html/bugzilla/

执行./checksetup.pl文件,查看perl模块情况.间接在输入:./checksetup.pl,回车即可.接下来会给出很多消息,仔细看你会发觉有些模块已经安装ok,并给出版本,如:CGI.pm (v3.21) ok: found v3.42,但是初次安装会有很多模块缺失,会提示not found等消息.


关于安装perl缺失模块,有2个方法:

1. 如果网络连接正常,可尝试网络安装,根据运行./checksetup.pl后的提示消息输入,即可自动下载安装缺失模块,此方法最为方便,运气好的话,可能一次性就OK.
此处以安装perl-Magick为例:输入 /usr/bin/perl install-module.pl Image::Magick, 即可.

2. 手动安装,需要到www.cpan.org下载相关模块,此过程较为复杂(因为模块间具有依赖关系,不是每个模块都是一次安装就OK的),但可加深理解.手动安装过程中,有以下几点需要注意:

a.一般情况下Linux自带的perl已经有了DBI模块,此时根据提示正常安装DBD-mysql即可.若perl的DBI模块还没有的话,又或是Linux没有安装perl,则到www.perl.org下载最新的perl模块安装。

b.perl模块的的安装方法多为:

perl Makefile.PL

make

make test

make install

到此应该知道为什么强调要安装gcc编译器了吧?

有些模块之间具有依赖性, 若make test过程中,产生异常可于make install后,重新执行perl Makefile.PL命令,此时可看到安装异常的原因.若具有模块依赖,则会提示需要安装相应模块.

当perl的必须模块以及数据库的DBD都安装成功后,再次执行./checksetup.pl文件,查看perl模块的安装情况,若必须的perl模块都安装成功后,则会提示编辑/bugzilla/目录下刚生成的的localconfig文件, 使用vi编辑该文件,修改该文件中的2个参数的值:

a. $index.html='0' 改为 $index.html='1', 这样会生成一个index.html文件,该文件指向index.cgi.

b. 把$db_pass=''的空字符改为你当初创建bugs用户时为其分配的密码.

保存修改后退出,再次执行./checksetup.pl文件,此时将创建bugs数据库以及数据库中的表格,同时提示输入管理员的用户名, 真实姓名, 口令是什么. 自此bugzilla的配置完成.

注:提示输入管理员的用户必须使用邮箱名称,如:test@163.com, 这是bugzilla的默认规定.

最后使用浏览器打开bugzilla地址,进入第一次登陆界面.

如果出现提示没有权限访问bugzilla的话,则说明bugzilla目录权限需要重新设置,可使用如下命令修改目录权限: chown -R apache.apche <Bugzilla目录名>,然后重新访问就能够了.


本文来自: 编程教程论坛(http://www.va1314.com/bc/) 详细文章参考:http://www.va1314.com/bc/thread-13103-1-1.html


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理