在centos 6下安装bugzilla

最近项目问题比较多,需要用bug管理软件进行问题管理。目前维护中的开源bug管理工具首选还是bugzilla,只是其用的是perl,环境装起来还是有些费劲。最后的运行环境是httpd+MysqL

##运行环境

目前最新的版本是5.0.3的,官方的linux下安装文档还算详细。

yum install httpd MysqL-server mod_perl mod_perl-devel httpd-devel gd-devel MysqL-devel rst2pdf graphviz patchutils gcc 'perl(Apache2::SizeLimit)' 'perl(Authen::Radius)' 'perl(Authen::SASL)' 'perl(Cache::Memcached)' 'perl(CGI)' 'perl(Chart::Lines)' 'perl(Daemon::Generic)' 'perl(Date::Format)' 'perl(DateTime)' 'perl(DateTime::TimeZone)' 'perl(DBI)' 'perl(Digest::SHA)' 'perl(Email::MIME)' 'perl(Email::Reply)' 'perl(Email::Sender)' 'perl(Encode)' 'perl(Encode::Detect)' 'perl(File::MimeInfo::Magic)' 'perl(File::Slurp)' 'perl(GD)' 'perl(GD::Graph)' 'perl(GD::Text)' 'perl(HTML::FormatText::WithLinks)' 'perl(HTML::Parser)' 'perl(HTML::Scrubber)' 'perl(IO::Scalar)' 'perl(JSON::RPC)' 'perl(JSON::XS)' 'perl(List::MoreUtils)' 'perl(LWP::UserAgent)' 'perl(Math::Random::ISAAC)' 'perl(MIME::Parser)' 'perl(mod_perl2)' 'perl(Net::LDAP)' 'perl(Net::SMTP::SSL)' 'perl(PatchReader)' 'perl(SOAP::Lite)' 'perl(Template)' 'perl(File::Which)' 'perl(Template::Plugin::GD::Image)' 'perl(Test::Taint)' 'perl(TheSchwartz)' 'perl(URI)' 'perl(XMLRPC::Lite)' 'perl(XML::Twig)'

###MysqL和httpd 安装MysqL,httpd,创建数据库略。

###安装bugzilla

下载bugzilla的tar.gz包,解压(最简单是解压到/var/www/html下)。

###汉化包 目前能找到的最近版汉化包是csdn上一个5.0.2根据繁体中文修改的,只能凑合用,而且还有两个文件中掉了两个END结束语句。解压zh-CN放到template下。不需要汉化,这步可以略过。

###安装perl各种库 运行里面的checksetup.pl脚本检查安装环境;

$ cd /var/www/html/bugzilla
$ checksetup.pl --check-modules

如果是在CentOS6.x,估计会有一堆错,一般是perl的各种库的缺失或版本太旧,如果是运行 install-module.pl --all 会使用cpan进行安装,在国内基本慢到无法安装成功。使用cpanm加上国内镜像,能较快解决这一问题。

安装 cpanm 以后使用,简单得不行了

$ wget  http://xrl.us/cpanm  --no-check-certificate -O /sbin/cpanm && chmod +x  /sbin/cpanm

建议还在 .bashrc 中配置一下别名,指向 163 的 cpan 的镜象

alias cpanm='cpanm --sudo --mirror http://mirrors.163.com/cpan --mirror-only'

安装和升级各种包,具体看执行checksetup.pl检查出来的缺失的必选包(以下是示例);

$ cpanm Date::Format
$ cpanm Email::Sender
$ cpanm Net::SMTP::SSL
$ cpanm IO::Socket::SSL

perl环境搞定后,直接配置数据库参数,先运行./checksetup.pl,它会在/var/www/html/bugzilla路径下自动生成一个名为localconfig文件。编辑这个文件,里面比较重要的参数是$db_driver (数据库类型) 、 $db_name (库名称) 、$db_name(用户名)、$db_pass(密码), $webservergroup (httpd的运行用户组)。修改完重新运行checksetup.pl脚本进行检查,直到没问题。

里面还会提示管理员邮箱与密码等。

###配置httpd服务

这个主要配置是加上目录执行配置,其余的部分略;

<Directory /var/www/html/bugzilla>
     AddHandler cgi-script .cgi
     Options +Indexes +ExecCGI
     DirectoryIndex index.cgi
     AllowOverride Limit FileInfo Indexes
</Directory>

配置完重启httpd,使用bugzilla还可以检查服务是否正常:

./testserver.pl http://<your-bugzilla-server>/

###配置邮件发送

访问bugzilla的服务,设置一些核心参数,像requirelogin(是否需要登录才能访问),还有就是发送邮件的设置,mail_delivery_method,一般是用SMTP,然后需要配置smtpserver,smtp_username,smtp_password,如果是用SSL还要把smtp_ssl打开。

设置完可以去注册一个新用户,填入邮箱,看注册邮件是否能发送成功。

如果是要限定注册邮箱的地址,比如公司邮箱后缀的,可以去User Authentication 功能修改createemailregexp参数,使用正则表达式来验证邮箱后缀是否可以注册

相关文章

Centos下搭建性能监控Spotlight
CentOS 6.3下Strongswan搭建IPSec VPN
在CentOS6.5上安装Skype与QQ
阿里云基于centos6.5主机VPN配置
CentOS 6.3下配置multipah
CentOS安装、配置APR和tomcat-native