搭建一个完整的bugzilla需要安装以下部分:mysql、apache、perl模块、postfix为了过程中安装软件的方便,我先搭建好yum源。vim /etc/yum.repos.d/xunlei.repo
[rpm]
name=xunlei
baseurl=
enabled=1
gpgcheck=0
(一)mysql的安装和配置:
1、首先安装mysql客户端程序和服务器应用程序:#yum install mysql–y
# yum install mysql-server –y
当看到显示complete的时候,就说明mysql安装成功。
2、首次使用mysql需要初始化数据库,使用如下命令可以初始化数据库# mysql_install_db
然后使用命令#chkconfig mysqld on使得每次开机能够开启mysql服务3、打开mysql的配置文件vi /etc/my.cnf在[mysqld]段增加如下行:
default-character-set=utf8 //修改mysql的默认字符集4、键入命令#Service mysqld on开启mysql服务5、此时可以直接使用mysql登入本地的mysql数据库,为安全起见,可以使用如下设置mysql的root密码。
#mysqladmin –uroot password redhat
6、新建一个bugs用户,用来连接mysql数据库,之后的bugzilla也是通过该用户来连接的mysql数据库的。#useradd bugs
7、使用root连入mysql,新建bugs数据库#mysql–uroot–predhat
Mysql> show databases;可以查看本地的数据库Mysql> create database bugs;新建一个bugs数据库Mysql> use bugs;切换到bugs数据库Mysql> GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,ALTER,CREATE, LOCK TABLES,DROP,REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY 'redhat';为bugs用户在bugs数据库授权Mysql> flush privileges;重新装在权限。Mysql> exit
至此,mysql的安装和配置完毕!
(二)perl模块的安装
由于默认的perl安装包缺少一些bugzilla需要的模块,所以需要补充一些模块,最好是在线进行,不要一个一个的自己安装。以root身份运行在联网情况下用以下命令安装所需的最少perl模块:
perl -MCPAN -e 'install "Bundle::Bugzilla"'
Are you ready for manual configuration? [yes] no
of modules we are processing right now? [yes]敲回车,以后都敲回车!
(三)apache的安装与配置1、apache的安装
去网上下载httpd-2.2.9.tar.gz的tar包,放到/usr/local
#cd /usr/local
#tar xvzf httpd-2.2.9.tar.gz #cd ./ httpd-2.2.9
#./configure --prefix=/usr/local/apache2 --enable-so
--prefix用于指定httpd程序将要安装到的系统目录--enable-so使httpd功能能够动态加载模块功能编译并安装
#make && make install
2、成功安装apahce后,可以对其进行配置。打开apache的主配置文件
#vi /usr/local/apache2/conf/httpd.conf所要更改的参数如下:
(1)将ServerName改为
ServerName 10.10.8.104:80(10.10.8.104为本机IP)
(2)将AddHandler cgi-scrīpt .cgi改行的注释去掉,以便允许Apache运行cgi-bin
目录之外的CGI脚本。
(3)DirectoryIndex那一行的最后,加上index.cgi,以便在进入Bugzilla目录时
查找index.cgi文件:DirectoryIndex index.html index.cgi。
(4)最后设置bugzilla文件夹的访问控制,在配置文件中加入如下段:
Options ExecCGI FollowSymLinks AllowOverride none Order deny,allow allow from all
此刻,不存在该文件夹,创建一个文件夹即可。#mkdir /usr/local/apache2/htdocs/bugzilla
此时,可以使用命令#/usr/local/apache2/bin/apachectl–t测试配置文件是否有误,
无误的话即可开启服务。
#/usr/local/apache2/bin/apachectl start
还可以将该句放到/etc/rc.local开机即可启动。
使用命令netstat–tpnl查看80端口是否已经监听。
(四)bugzilla的安装
到网上下载bugzilla的tar包:
bugzilla-4.2.2.tar.gz放到/usr/local #tar xvzf bugzilla-4.2.2.tar.gz //解压tar包#cd bugzilla-4.2.2
#mv ./* /usr/local/apache2/htdocs/bugzilla //移动bugzilla文件到apache目录#chmod 777 ./ -R
(五)进入bugzilla目录,修改localconfig文件
#cd /usr/local/apache2/htdocs/bugzilla
#./checksetup.pl检查perl模块的安装情况#vi ./localconfig
在字段$db_pass=’’;中,将在mysql中为bugs用户设置的密码写入单引号中$db_pass=’redhat’;
(六)使用bugzilla自带的smtp发送邮件
切换到目录/usr/local/apache2/htdocs/bugzilla/data打开文件params
Vim params需要修改的参数如下:
maintainer : zuozhang@xunlei.com mail_delivery_method : SMTP
mailfrom : zuozhang@xunlei.com sendmailnow: on
smtpserver : mail.xunlei.com smtp_username: zuozhang@xunlei.com smtp_password :设置为自己邮箱的密码(七)访问
此时可以输入10.10.8.104/bugzilla访问到bugzilla的主页。但也有可能会因权限不够的问题而访问不到主页面的情况出现
修改apache的运行用户为apache(确保系统有apache账户)Vi /usr/local/apache2/conf/httpd.conf将User和Group都改为apache:
User apache Group apache
然后将bugzilla目录及其下面的所有文件都改为apache所有
Chown apache:apache /usr/local/apache2/htdocs/bugzills–R (八)简体中文界面
将中文包bugzilla.zh-TW.4.2.2.20120812.tar.gz下载到/usr/local #cd /usr/local
#tar xvzf bugzilla.zh-TW.4.2.2.20120812.tar.gz #cd bugzilla-tw/ # cd template/
#mv zh-TW /usr/local/apache2/htdocs/bugzilla/template/cn刷新页面即可看到中文。
(八)更改web访问端口:
cd /usr/local/apache2/conf
vi httpd.conf
更改端口
Listen 7071/usr/local/apache2/bin/apachectl stop
/usr/local/apache2/bin/apachectl start